प्रतिक्रिया में 16.2, के लिए बेहतर समर्थन Fragmentsजोड़ा गया है। अधिक जानकारी यहां रिएक्ट के ब्लॉग पोस्ट पर पाई जा सकती है।
हम सभी निम्नलिखित कोड से परिचित हैं:
render() {
return (
// Extraneous div element :(
<div>
Some text.
<h2>A heading</h2>
More text.
<h2>Another heading</h2>
Even more text.
</div>
);
}
हाँ, हमें एक कंटेनर div की आवश्यकता है, लेकिन यह एक सौदे का बड़ा हिस्सा नहीं है।
प्रतिक्रिया 16.2 में, हम आसपास के कंटेनर div से बचने के लिए ऐसा कर सकते हैं:
render() {
return (
<Fragment>
Some text.
<h2>A heading</h2>
More text.
<h2>Another heading</h2>
Even more text.
</Fragment>
);
}
या तो मामले में, हमें अभी भी एक आंतरिक तत्व के चारों ओर एक कंटेनर तत्व की आवश्यकता है।
मेरा सवाल है, क्यों एक Fragmentबेहतर उपयोग कर रहा है ? क्या यह प्रदर्शन में मदद करता है? यदि हां, तो क्यों? कुछ अंतर्दृष्टि पसंद करेंगे।
divयह है कि आप हमेशा एक रैपर तत्व नहीं चाहते हैं। रैपर तत्वों का एक अर्थ होता है और आमतौर पर आपको उस अर्थ को हटाने के लिए अतिरिक्त शैलियों की आवश्यकता होती है। <Fragment>बस कृत्रिम चीनी है जो प्रदान नहीं की जाती है। रैपर बनाते समय ऐसे हालात होते हैं, उदाहरण के लिए एसवीजी में जहां <div>उपयोग नहीं किया जा सकता है और <group>हमेशा वह नहीं होता जो आप चाहते हैं।