2016-08-15 3 views
33

एक सादा वस्तु बनाम StyleSheet.create() का उपयोग करने का क्या फायदा है?प्रतिक्रिया मूल - स्टाइलशीट बनाम एक सादा वस्तु का उपयोग करने का क्या फायदा है?

const styles = StyleSheet.create({ 
    contianer: { 
    flex: 1 
    } 
} 

बनाम।

const styles = { 
    contianer: { 
    flex: 1 
    } 
} 

उत्तर

25

की StyleSheet.js की टिप्पणी अनुभाग से सीधे हवाला देते हुए प्रतिक्रिया देशी

कोड गुणवत्ता:

  • शैलियों समारोह प्रस्तुत करना से दूर ले जाकर करके, आप कोड को आसान बना रहे हैं समझना।

  • शैलियों का नामकरण रेंडर फ़ंक्शन में निम्न स्तर के घटकों को अर्थ जोड़ने का एक अच्छा तरीका है।

प्रदर्शन:

  • एक शैली वस्तु से एक स्टाइलशीट बनाने के लिए यह संभव एक नई शैली वस्तु हर बार बनाने के बजाय आईडी के आधार पर यह उल्लेख करने के लिए बनाता है।

  • यह पुल के माध्यम से केवल एक बार शैली भेजने की अनुमति देता है। बाद के सभी उपयोग एक आईडी को संदर्भित करने जा रहे हैं (अभी तक लागू नहीं किया गया है)।

इसके अलावा Stylsheet साथ ही अपने stylehsheet सामग्री सत्यापित करता है। इसलिए स्टाइलशीट वास्तव में कार्यान्वित होने पर गलत स्टाइल प्रॉपर्टी की किसी भी त्रुटि को रनटाइम के बजाय संकलन के समय दिखाया जाता है।

+1

मुझे लगता है, मैं सोच रहा था क्योंकि मैं केवल एक वस्तु का उपयोग कर सकता हूं तो स्टाइलशीट का बिंदु क्या है। प्रदर्शन के समय स्टाइलशीट की तुलना में इनलाइन बेहतर है? उत्तर के लिए धन्यवाद :) – corasan

+3

नहीं। इनलाइन भी कुशल नहीं है। यह सामान्य वस्तु का उपयोग करने के समान है। क्योंकि इनलाइन शैली के साथ-साथ देशी प्रतिक्रिया करने के लिए स्टाइलशीट की तुलना में मूल पुल पर प्रतिक्रिया करने के लिए अधिक डेटा भेजने की आवश्यकता होगी। जो प्रदर्शन – while1

+6

के लिए अच्छा नहीं है पहले तीन बुलेट बिंदु ओपी की शैली ऑब्जेक्ट को रेंडर फ़ंक्शन के बाहर एक कॉन्स के रूप में घोषित करने की तकनीक के अप्रासंगिक हैं। –

संबंधित मुद्दे