जब में एक तत्व एनिमेट प्रतिक्रिया हम इस तरह के रूप में एक स्निपेट का उपयोग कर सकते हैं:ट्रांज़िशन एंटरटाइमआउट/ट्रांज़िशन लाइवटाइम वास्तव में क्या प्रतिक्रिया करता है?
<div>
<button onClick={this.handleAdd}>Add Item</button>
<ReactCSSTransitionGroup transitionName="example" transitionEnterTimeout={500} transitionLeaveTimeout={300}>
{items}
</ReactCSSTransitionGroup>
</div>
प्रशंसा सीएसएस एनिमेशन के साथ।
मैं डॉक्स (यहां पाया पढ़ा है: https://facebook.github.io/react/docs/animation.html)but मैं 100% यकीन है कि क्या दो टाइमआउट विशेषताओं वास्तव में कि मैं एक अनुमान खतरे हैं नहीं कर रहा हूँ और कहते हैं कि वे अगर एनीमेशन पूरा नहीं करता है एक fallback हैं
?मूल्यों/बाहर अवधि मूल्यों में सीएसएस से मेल खाना चाहिए, या वे एनीमेशन मूल्यों से अधिक होना चाहिए?
.example-enter {
opacity: 0.01;
}
.example-enter.example-enter-active {
opacity: 1;
transition: opacity 500ms ease-in;
}
.example-leave {
opacity: 1;
}
.example-leave.example-leave-active {
opacity: 0.01;
transition: opacity 300ms ease-in;
}
बस एक फॉलो अप के रूप में, वर्तमान में, '* टाइमआउट' प्रोप वास्तव में कुछ भी नहीं करते हैं यदि कक्षा लागू होने पर एक संक्रमण या एनीमेशन है। आप जिस भी चीज को चाहते हैं उसे वैल्यू सेट कर सकते हैं, और 'ReactCSSTransitionGroup'' एनीमेशन एंड 'या' ट्रांजिशन एंड 'घटनाओं को सुनने के पक्ष में इसे अनदेखा कर देता है जो ब्राउजर उत्सर्जित करता है। एकमात्र समय उन मानों को कुछ भी करता है जब वर्ग संक्रमण या एनिमेशन के नंगे होते हैं। –
@ नोब-इन-ज़रूरत मुझे नहीं लगता कि यह पूरी तरह से सच है - (कम से कम वर्तमान संस्करण में नहीं)। यदि मैं वास्तव में उच्च टाइमआउट सेट करता हूं, लेकिन कम एनीमेशन टाइम्स, एनीमेशन समाप्त हो जाएगा, लेकिन संक्रमण को तब तक हटाया नहीं जाएगा जब तक संक्रमण समाप्त नहीं हो जाता है – Chris