Javascript 带有onchange事件的更新状态具有延迟字符
当我使用onchange事件更新我的状态时,我有一个延迟字符 这是我的课Javascript 带有onchange事件的更新状态具有延迟字符,javascript,reactjs,Javascript,Reactjs,当我使用onchange事件更新我的状态时,我有一个延迟字符 这是我的课 var DivInput = React.createClass({ getInitialState: function() { return { content: '' } }, onChange: function(e) { var value = e.target.value var name = e.ta
var DivInput = React.createClass({
getInitialState: function() {
return {
content: ''
}
},
onChange: function(e) {
var value = e.target.value
var name = e.target.name
this.setState({
content: value
});
console.log(this.state.content)
this.props.onUpdateState(name, value)
},
render: function() {
return (
<div className="form-group">
<label className="col-md-4 control-label" for="textinput">{this.props.content}</label>
<div className="col-md-4">
<input onChange={this.onChange} name={this.props.name} type={this.props.type} value={this.state.content} className="form-control input-md" />
</div>
</div>
)
}
})
如果我写:“ab”
用于输入at=“abc”
等等
有人已经解决了这个问题
谢谢setState()
不会立即改变此.state但会创建挂起的状态转换。调用此方法后访问this.state
,可能会返回现有值
查看更多信息谢谢,但医生没有说明如何解决此问题。如何强制状态更新您可以这样做,但这不是正确的方法:
this.state.content=value;这个.forceUpdate()
而不是this.setState({content:value})代码>但这不是一个好方法!好的,谢谢你,那最好的方法是什么?(虽然我必须全部更改)我想,最好的方法是在调用setState
并尝试找到另一种编写代码的方法之后,不要使用this.state.property
。)
this.state.content = ""
this.state.content = "a"
this.state.content = "ab"