如何解决React

时间:2015-08-31 16:26:31

标签: javascript asynchronous reactjs

我是React的新手。

我一直在尝试很多次,而且大多数时候我遇到了异步运行的情况。

例如:

我有这个问题,我需要在调用render之前调用一个函数来根据状态执行一些操作。

状态根据传递的道具进行更新。

目前我使用的是componentWillReceiveProps.代码看起来像这样。

_function(){
    //uses state variables.
},
componentWillReceiveProps: function (){
   this.setState({
        ......
   });

   _function();

},

这是异步的,我多次遇到过这类问题。

如何解决上述情况以及有什么好的做法让我不会遇到异步问题。

任何好的参考资料肯定会有所帮助。

2 个答案:

答案 0 :(得分:0)

通常你不会。

反应只是渲染视图。编写一个处理异步内容的vanilla js应用程序,然后使用新的react.render将结果推送到您的视图中。

答案 1 :(得分:0)

将nextProps传递给需要新状态的函数。

    _function(nextProps){
            //uses state variables.
    },
    componentWillReceiveProps: function (nextProps){
         this.setState({
                    ......
         });

         _function(nextProps);

    },