【发布时间】:2018-10-07 08:29:11
【问题描述】:
我在这里读过类似的问题
Why shouldn't JSX props use arrow functions or bind?
JSX props should not use .bind() - how to avoid using bind?
No .bind() or Arrow Functions in JSX Props making no sense to me when I need to pass arguments
而且我了解使用箭头函数如何导致在每次渲染和效果性能时重新创建函数。但是我仍然不完全理解如何在 React Native 中解决这个问题,特别是在使用 setState 时。
例如,如果我有一个 TextInput,它会在 onChangeText 函数中更新组件状态中保存的值,我该如何避免使用箭头函数?
<TextInput
value={this.state.text}
onChangeText={text => this.setState({ text })}
/>
我必须为我想要更新的状态的每个属性创建一个处理程序吗?例如,如果我有两个 TextInput 字段电子邮件和密码,是否需要这样处理?
updateEmail = email => {
this.setState({ email })
}
updatePassword = password => {
this.setState({ password })
}
render() {
...
<TextInput
value={this.state.email}
onChangeText={this.updateEmail}
/>
<TextInput
value={this.state.password}
onChangeText={this.updatePassword}
/>
【问题讨论】:
标签: javascript reactjs react-native