我有一个包含多个文本输入的表单.我将它们全部设置为受控输入.键入时,新文本在字段中显示的延迟最多可达数秒.这是一个示例字段:
<label>Event Name</label>
<input type="text"
placeholder="Title"
className="form-control"
name="title"
value={this.state.event.title}
onChange={this.handleChange} />
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚是什么导致它如此缓慢或如何解决它.
更新:这是组件,应该足以显示正在发生的事情.
let CreateEventForm = React.createClass({
submit: function () {},
handleChange: function(e){
let value = e.target.value;
let name = e.target.name;
if(value === 'true'){
value = true;
}
if(value === 'false'){
value = false;
}
// If true/false toggle old
let oldState = this.state.event[name];
if(typeof oldState === 'boolean'){
value = !oldState;
}
// If is array
if(name.indexOf('[]') > -1){
name = name.replace('[]', '');
oldState = this.state.event[name];
var pos = oldState.indexOf(value); …Run Code Online (Sandbox Code Playgroud)