2017-01-11 13 views
5

मुझे पता है कि it considered a good practicedisplayName संपत्ति जोड़कर प्रतिक्रिया घटक नाम देने के लिए है, लेकिन मुझे यकीन नहीं है कि मुझे क्यों पता है। प्रतिक्रिया दस्तावेज़ों में, यह कहता है:प्रतिक्रिया घटक 'displayName' का उपयोग किस लिए किया जाता है?

डिस्प्लेनाम स्ट्रिंग का उपयोग डीबगिंग संदेशों में किया जाता है। जेएसएक्स स्वचालित रूप से यह मान सेट करता है; गहराई में जेएसएक्स देखें।

इतना महत्वपूर्ण क्यों है? अगर मैं इसे नहीं जोड़ूंगा तो क्या होगा? (अब तक मेरे पास यह नहीं था और इसमें कोई समस्या नहीं थी)

क्या घटकों का नाम देने के बारे में कोई सिफारिश/अच्छी प्रथाएं हैं?

+1

यदि आप नहीं जोड़ते घटक नाम प्रदर्शित नहीं होगा, और यह डिबग करने के लिए मुश्किल हो जाएगा राज्य के लिए लेकिन यदि आप घटक बनाने के लिए Es6 का उपयोग कर रहे हैं (घटक को विस्तारित करना) तो आपको प्रत्येक घटक के लिए मैन्युअल रूप से प्रदर्शन नाम जोड़ने की आवश्यकता नहीं है। –

उत्तर

8

मैंने हमेशा उसी नाम पर displayName सेट किया है जैसा मैं इसे निर्दिष्ट कर रहा हूं। इसका उपयोग केवल विकास के निर्माण में किया जाता है क्योंकि इसे उत्पादन निर्माण पर मृत-कोड उन्मूलन के माध्यम से हटा दिया जाता है और आपके आवेदन के भीतर भरोसा नहीं किया जाना चाहिए।

जहां इसका उपयोग किया जाता है, यह मुख्य रूप से प्रतिक्रिया त्रुटि संदेश के भीतर है। यही कारण है कि इसे डीबगिंग के लिए मूल्यवान माना जाता है। यदि कोई नाम Component कहने के लिए त्रुटि संदेशों को डिफ़ॉल्ट रूप से प्राप्त नहीं किया जा सकता है, जो आपके प्रोजेक्ट में 1 से अधिक घटक होने पर डीबग करना बेहद मुश्किल है। ।

यहाँ कुछ त्रुटि संदेश जो प्रतिक्रिया स्रोत में DISPLAYNAME संदर्भ हैं:

Invalid Return

Inline style error

+0

आप वास्तव में displayName कैसे सेट करते हैं? प्रतिक्रिया दस्तावेज़ों के अनुसार यह घटक के नाम से संदर्भित प्रतीत होता है लेकिन यह नहीं कहता कि इसे गैर-एचओसी के लिए मैन्युअल रूप से कैसे सेट किया जाए। – gabrielwr

+2

यह एक स्थिर संपत्ति है। सबसे तेज़ तरीका इसे सीधे सेट करना है, यानी। 'hoc.displayName =" hocName ";' – kwelch

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