अपने पिता घटक <Father />
में, आप (का उपयोग करते हुए और उदाहरण के लिए आईडी), एक बूलियन मान, प्रस्तुत करना है या नहीं जिसका अर्थ है बताए एक प्रारंभिक राज्य है जहां आप प्रत्येक बच्चे को ट्रैक बना सकते हैं घटक माउंट किया गया है, तो आप अपने टाइमर शुरू स्थिति बदलने में:
componentDidMount() {
this.timeouts = React.Children.forEach(this.props.children, (child, index) => {
return setTimeout(() => {
this.setState({ index: true; });
}, child.props.delay);
});
}
आप अपने बच्चों को प्रस्तुत करना है, तो आप उन्हें पुनः द्वारा करते हैं, एक आधार के रूप में मिलान बच्चे कि अगर घटक चाहिए कहते हैं के लिए राज्य बताए प्रस्तुत किया जाना चाहिए या नहीं।
let children = React.Children.map(this.props.children, (child, index) => {
return React.cloneElement(child, {doRender: this.state[index]});
});
अपने
<Child />
घटक
render() {
if (!this.props.render) return null;
// Render method here
}
जब टाइमआउट निकाल दिया जाता है में
तो, राज्य बदल गया है और पिता घटक rerendered है। बच्चों के प्रोप अपडेट किए जाते हैं, और यदि doRender
true
है, तो वे स्वयं को प्रस्तुत करेंगे।
आपके उत्तर के लिए बहुत बहुत धन्यवाद! बिल्कुल वैसे ही काम करता है जैसा मुझे चाहिए था। – michalvalasek
आपको उस शो संपत्ति से कहाँ मिला? यह प्रतिक्रिया का हिस्सा नहीं है? – PositiveGuy
'शो' उस फ़ंक्शन को संदर्भित करता है जो मैंने बनाया है जो' छुपा 'स्थिति को खाली स्ट्रिंग पर सेट करता है। यह 'चाइल्ड' क्लास पर तीसरा कार्य है। –