के बाद मैं एक घटक है कि प्रारंभिक अवस्था के साथ भरी हुई किया जा रहा है प्रतिक्रिया को रोकना:प्रस्तुत जब तक अनुरोध
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));
},
तो सब ठीक काम करता है। यदि व्यक्ति पाया जाता है, तो मैं एक चीज़ प्रस्तुत करता हूं, और यदि नहीं, तो कुछ और।
जब पहली बार पाया जाता है, तो दृश्य गैर-पाए गए राज्य से राज्य वास्तविक तेज़ पाया जाता है, क्योंकि एपीआई कॉल बहुत तेज़ होते हैं।
उस कॉल को वापस आने तक प्रतीक्षा करने का सबसे अच्छा तरीका क्या है?
ग्रेट फीडबैक। मुझे वास्तव में यह दृष्टिकोण पसंद है क्योंकि मुझे लगता है कि मैं जिस बाँध में था वह था कि शुरुआत में 'व्यक्ति' को '{}' में सेट करना वही था जैसा कि व्यक्ति से पूछताछ की गई थी और वापस नहीं आया '{} '। एक अलग स्थिति के आधार पर 2 को अलग करना बहुत समझ में आता है और निश्चित रूप से उस संदेश को व्यक्त करने के लिए सही घटकों को प्रस्तुत करना आसान बनाता है। धन्यवाद! – brandonhilkert
जिज्ञासा से, 'status.loading === status.notFound' नहीं है? – brandonhilkert
@brandonhilkert ऑब्जेक्ट्स की तुलना संदर्भ से की जाती है, सामग्री नहीं, इसलिए '{}! == {}' और '[]! == []', आदि – FakeRainBrigand