反应js从服务器获取数据并进行渲染

时间:2015-06-29 06:48:24

标签: javascript reactjs reactjs-flux

我正在使用React js和Biff Flux实现。我对从服务器实现负载的最佳方法有疑问。

getInitialState: function(){
    return{
      loading: true
    };
},
componentDidMount: function(){
  MyAction.fetchsomeData();
},

storeDidChange: function(){
  var data = MyStore.getsomeData();
  // set state
  this.setState({loading: false});
},
render: function(){
  // wait for render until response from server
  // really?
  if( this.state.loading ){
     return null;
  }
  // do render
}

这是正确的做法吗?有时我有一个Controller加载数据并将其作为道具发送给它的子组件,但是当我必须等待来自服务器的响应时,我仍然不知道呈现组件的最佳方式。

1 个答案:

答案 0 :(得分:1)

通常,您希望在顶部组件中调用ajax。并且您希望通过道具将数据发送到子组件。

虽然你的方法看起来很正确。您可以使用localStorage第一次缓存响应并显示它,直到从服务器获取原始数据。

这会让您的应用看起来更快。

类似的东西:

PlayerPrefs

如果您没有查看缓存解决方案,那么您的方法很好。 我希望这会对你有所帮助。