【发布时间】:2018-03-06 05:16:41
【问题描述】:
我在 StackOverflow 上找到了下面的handleChange“事件处理程序”代码并使用了它。一切正常。关于这个handleChange“事件处理程序”,我的问题是:
{target}如何成为handleChange的参数?将目标发送到事件处理程序是onChange的默认行为吗?为什么必须使用
{target}?为什么不能简单地使用target?这是ES6中destructuring功能的示例吗?
自我注意:属性名称target.name 周围的方括号[] 是ES6 中的一个新功能,称为computed property names
构造函数
this.state = {
username: "",
};
渲染
username: <input type="text" name="username" value={ this.state.username} onChange={ this.handleChange } />
事件处理程序
handleChange = ({ target }) => {
this.setState({
[target.name]: target.value
});
}
【问题讨论】:
标签: reactjs destructuring