【发布时间】:2014-10-10 07:27:55
【问题描述】:
我在reactjs 中有一个表单,我将用它来创建用户。这是我的代码的重要部分:
var AddUser = React.createClass({
mixins: [OverlayMixin],
getInitialState: function() {
this.state.user = {}
return {
isModalOpen: false
};
},
addScout: function() {
UserCreator.addUser({
user: this.state.user
})
},
....
updateUser: function(e) {
this.state.user[e.currentTarget.id] = e.currentTarget.value;
},
...
render: function() {
return ( < button onClick = { this.toggleModal} type = "button" className = "btn btn-success" >Add User < /button>
);
},
renderOverlay: function() {
if (!this.state.isModalOpen) {
return <span></span>
}
return (
< Modal title = "Add a User" onRequestHide = { this.handleToggle} >
< div className = "modal-body" >
<form>
<div className="form-group">
<label for="first_name">First Name</label>
<input id="first_name" className="form-control" onBlur={this.updateUser}></input>
</div>
<div className="form-group">
<label for="last_name">Last Name</label>
<input id="last_name" className="form-control" onBlur={this.updateUser}></input>
</div>
</form>
< /div>
<div className="modal-footer">
<button onClick={this.addUser} className="btn btn-primary">Add</button >
<button onClick={this.toggleModal} className="btn btn-warning">Cancel</button >
< /div>
</Modal >
);
}
});
当用户打开模式并输入名字或姓氏时,模糊事件会触发updateUser。当addUser 按钮被点击时,UserCreator.addUser 被调用。
问题是我没有用setState 设置状态。 reactjs 处理这些输入的方法是什么。如何创建一个对象来将输入推入?
【问题讨论】:
标签: reactjs