假设我有一个函数:
handleChange = (e) => {
this.setState({ [e.target.id]: e.target.value });
}
以下内容有什么区别:
1.
<FormControl value={this.state.password} onChange={this.handleChange} />
-
<FormControl value={this.state.password} onChange={(e) => this.handleChange(e)} />
第二种情况是anonymous function
创建执行handleChange
方法并由此为其提供context
.
每次 React 组件渲染时,都会在第二种情况下创建一个新函数,而不是第一种情况,因为向处理程序提供了相同的 handleChange 方法引用。
您可能还想看看render中的箭头函数如何实现上下文绑定 https://stackoverflow.com/questions/47679673/how-does-event-handlers-with-arrow-functions-achieve-context-binding/47680408#47680408
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)