在react-native中考虑TextInput,下面的实现似乎是一种标准方法:
<TextInput
value={this.state.text}
onChangeText={text => this.setState({ text })}
/>
但是,setState()是一个异步函数。我想知道是否可能由于setState()的执行顺序而遇到不一致。
例如:
setState()是一个异步函数。是否可能由于setState()的执行顺序而遇到不一致
异步setState()
并不意味着将以任何随机顺序调用setState
。 setState
是异步意味着它只是异步更新状态。
在你的情况下,每当按下某个键时,将调用onChange
处理程序并调用setState
,这意味着setState
将在每次按键时顺序调用,并将以相同的顺序更新状态,但是异步。
尝试
<TextInput
onChange={(e) => this.setState({ text : e.target.value })}
/>