【发布时间】:2019-09-20 16:51:25
【问题描述】:
我有一个表单输入,我将我的值设置为来自我的道具的初始状态。现在我有一个 handleChange 函数,当我尝试输入表单输入时,它确实触发了 onChange,但值根本没有改变。
handleChange(e){
this.setState({
[e.target.name]: e.target.value,
});
console.log('handle change', this.state.firstName)
}
console.log 返回初始状态,即使我在键盘上键入,它仍然返回初始状态。
这是我的handleChange()
虽然这是我的初始状态:
this.state = {
firstName: this.props.profiles.selectedProfile.first_name
}
这是我的输入
<Form.Input
label="First Name"
value={this.state.firstName}
placeholder="Jose"
onChange={this.handleChange}
/>
当我只在状态上声明了一个空字符串但现在我的初始状态来自我的道具时,这有效,它不起作用。
【问题讨论】:
-
您介意在
handleChange函数中记录e.target.name。另外,您是否在构造函数中绑定了这个handleChange?也可以试试:firstName: this.props.profiles.selectedProfile.first_name || ''
标签: javascript reactjs