美文网首页React NativeReact Native开发
[React Native] 关于 setState

[React Native] 关于 setState

作者: 瑶柱活到老供楼到老 | 来源:发表于2016-01-25 15:20 被阅读4037次
    1. 当组件处于批处理阶段,setState 将不会马上更新 state,这种情况下,想要执行完 setState 后,依赖 state 进行后续的 setState 是会有问题的;
    2. 对上述问题,有两个处理办法:
      a. 调用 setState 时与值一并传入一个回调,该回调在 setState 执行完成时将被执行,可在其中依赖 this.state 获得有效的新值:
    this.setState({money: 10000}, () => {
        this.setState({
            money: this.state.money * 2
        });
    });
    

    b. 调用 setState 时传入算值函数,该函数在对 state 设值时执行,并带有 previousState, currentProps 参数,可作为算值依据:

    this.setState({money: 10000});
    this.setState(function(previousState, currentProps) {
        return {money: previousState * 2};
    });
    

    相关文章

      网友评论

        本文标题:[React Native] 关于 setState

        本文链接:https://www.haomeiwen.com/subject/bgxdkttx.html