React native 按下按钮时,我的状态值没有改变

React native 按下按钮时,我的状态值没有改变,react-native,React Native,我一直在单击按钮时执行此功能,但相应的(I,e Otpfield)值没有改变React不会立即更新状态,这是一个异步操作。因此,调用console.log()调用的速度太快,并且状态尚未更改 改用“afterUpdated”回调(方法的第二个参数): 国家不会改变。在更改状态之前,onButtonPress函数必须首先完成执行 使用componentDidUpdate生命周期方法检查状态是否已更改 this.setState( {property: true}, () =>

我一直在单击按钮时执行此功能,但相应的(I,e Otpfield)值没有改变

React不会立即更新状态,这是一个异步操作。因此,调用
console.log()
调用的速度太快,并且状态尚未更改

改用“afterUpdated”回调(方法的第二个参数):


国家不会改变。在更改状态之前,onButtonPress函数必须首先完成执行

使用componentDidUpdate生命周期方法检查状态是否已更改

this.setState(
    {property: true},
    () => console.log(this.state.property)
);

是否尝试在setState的回调中记录otpfield值
this.setState({otpfield:'#48A23A'},()=>console.log('result',this.state.otpfield))
componentDidUpdate是否仅在组件道具更改时或内部状态更改(在setstate之后)时调用?我想您的意思是componentWillReceiveProps。组件更新。可以调用,包括更改道具和状态。
this.setState(
    {property: true},
    () => console.log(this.state.property)
);
componentDidUpdate(prevProps, prevState) {
 console.log('result',this.state.otpfield);
 //new State
 console.log('result',prevState.otpfield);
// prev State
}