请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于e.target.value和e.target的疑问

render() {
	return (
		<div style={{ marginTop: '10px', marginLeft: '10px' }}>
			<Input
				value={this.state.inputValue}
				placeholder="todoinfo"
				style={{ width: '300px', marginRight: '10px' }}
				onChange={this.handleInputChange}
			/>
		</div>			
}

handleInputChange(e) {
	console.log(e.target);
	console.log(e.target.value);
}

在这里我发现console.log(e.target)和console.log(e.target.value)得到的结果不一致
我们input的defaultvalue是123 如果我们增加了a
e.target得到了一个input节点,但是在这里面value = ‘123’, 这个我可以理解,因为这个e.target的value始终和inputvalue相等的:value={this.state.inputValue}

<input placeholder="todoinfo" type="text" class="ant-input" value="123" style="width: 300px; margin-right: 10px;">

但是e.target.value的值为什么可以变成123a呢,我现在不太理解为什么e.target.value和e.target里面的value attribute的值不一致

还有我看这个问题https://coding.imooc.com/learn/questiondetail/68148.html, 老师说打印之后,redux马上会用原来的123替换掉123a,这是为什么呢,没看到在哪里实现

正在回答 回答被采纳积分+3

1回答

Dell 2021-03-27 15:13:19

e.target 指的是触发事件的元素   e.target.value 指的是这个元素的 value,同学你根据这个定义来思考一下

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号