后我的影片被加载初始状态的组件:推迟阵营渲染,直到请求
getInitialState: function() {
return {
panel: "deals",
showExtension: false,
person: {}
};
},
而且我有这样找一个人:
componentDidMount: function() {
this.findPersonFromBackground();
},
findPersonFromBackground: function() {
chrome.runtime.sendMessage({ action: "findPerson", email: this.props.currentEmail.from_email }, function(person) {
this.setState({person: person});
}.bind(this));
},
所以一切工作正常。如果找到了这个人,我会提出一件事,如果没有,则提供其他的东西。
当找到第一个时,由于API调用相当快,视图从非找到状态变为真正的快速状态。
在第一次通话回来之前等待呈现的最佳方式是什么?
很棒的反馈。我非常喜欢这种方法,因为我认为我最初将'person'设置为'{}'的绑定与查询该人并返回时找不到'{}'是一样的。根据不同的状态来分离2会有很大的意义,并且更容易呈现正确的组件来传达该消息。谢谢! – brandonhilkert 2014-09-26 02:07:57
出于好奇,是不是'status.loading === status.notFound'? – brandonhilkert 2014-09-26 16:46:14
@brandonhilkert对象通过引用进行比较,而不是内容,所以'{}!== {}'和'[]!== []'等等。 – FakeRainBrigand 2014-09-26 17:33:11