2016-07-13 34 views
19

मुझे घटकों और निर्देशों के बीच वास्तविक अंतर को समझना मुश्किल लगता है। अब मैं समझता हूं कि घटक एक बहुत ही आसान अवधारणा हैं।कोणीय 1.5: निर्देश बनाम घटक?

तो यह ध्यान में रखते हुए, कोणीय 1.5 का उपयोग करते समय निर्देशों का उपयोग जारी रखने का कोई कारण है?

शायद मुझे असली संदर्भ याद आ रहा है, लेकिन ऐसा लगता है कि घटक एक आसान एपीआई प्रदान करते हैं।

तो मुझे निर्देश का उपयोग जारी रखने का क्या कारण होगा?

कोणीय 2 कहता है कि सबकुछ एक घटक है, इसलिए 1.5 से 2 तक आसान माइग्रेशन की दिशा में काम करना, क्या यह केवल घटकों का उपयोग करने के लिए समझ में नहीं आता है?

अतीत में मैंने निर्माण के लिए निर्देशों का उपयोग किया है, उदाहरण के लिए, एक ऑटो लुकअप टेक्स्टबॉक्स, ऐसा कोई कारण नहीं है कि मुझे अब घटक के अंदर ऐसा नहीं करना चाहिए? और फिर मैं इस घटक को अन्य घटकों के अंदर फिर से उपयोग कर सकता हूं?

मैं वास्तव में सराहना करता हूं अगर कोई यह पुष्टि कर सके कि मुझे क्या करना चाहिए और अनुशंसित तरीका आगे बढ़ रहा है।

धन्यवाद

उत्तर

24

सिर्फ कोणीय डॉक्स को कॉपी, क्योंकि वे सबसे अच्छा तरीका में रख मैं

समझना अवयव

कोणीय में सोच सकते हैं, एक घटक के एक विशेष प्रकार का है निर्देश जो एक सरल विन्यास का उपयोग करता है जो घटक-आधारित अनुप्रयोग संरचना के लिए उपयुक्त है।

यह एक ऐप को ऐसे तरीके से लिखना आसान बनाता है जो वेब घटक का उपयोग करने या एंजुलर 2 की एप्लिकेशन आर्किटेक्चर की शैली का उपयोग करने के समान है।अवयव की

लाभ:

  • सादा निर्देशों से सरल विन्यास
  • समझदार चूक और सर्वोत्तम प्रथाओं को बढ़ावा देने के
  • घटक आधारित वास्तुकला
  • लेखन घटक निर्देशों के लिए अनुकूलित यह आसान करने के लिए उन्नत करने के लिए कर देगा कोणीय 2

जब एन OT घटकों का उपयोग करने:

    निर्देशों कि डोम हेरफेर पर भरोसा करते हैं के लिए
  • , घटना श्रोताओं आदि जोड़ने, क्योंकि संकलन और लिंक कार्यों अनुपलब्ध
  • आप प्राथमिकता जैसे उन्नत निर्देश परिभाषा विकल्प, टर्मिनल की जरूरत है जब, बहु हैं तत्व
  • जब आप एक तत्व एक निर्देश है कि एक विशेषता या सीएसएस वर्ग से शुरू हो रहा है, बजाय चाहते

अधिक पढ़ने: https://docs.angularjs.org/guide/component

+0

यदि आप अंतर का उल्लेख करते हैं तो यह बहुत अच्छा होगा :) –

0

घटक मूल रूप से केवल एक नए प्रकार के निर्देश हैं जो घटक-आधारित आर्किटेक्चर के लिए डिज़ाइन किए गए हैं। कई तरीकों से, घटक उनकी कार्यक्षमता में अधिक प्रतिबंधित हैं, बल्कि बेहतर सम्मेलनों और डिजाइन को प्रोत्साहित करते हैं जो वास्तव में अधिक रखरखाव योग्य और पुन: प्रयोज्य कोड की ओर ले जाते हैं।

उदाहरण के लिए, घटक बल अलग-अलग दायरे और दृढ़ता से एक तरफा बाध्यकारी को प्रोत्साहित करते हैं। यह महत्वपूर्ण क्यों है? चूंकि यह बेहतर घटक को समाहित करता है और आपको उन घटकों को बनाने से हतोत्साहित करता है जो मूल तत्व या दायरे के साथ कसकर मिलते हैं। इसका मतलब यह है कि आप इस तरह से घटक लिखते हैं कि भविष्य में बिना किसी बदलाव के भविष्य में पुन: उपयोग करने में सक्षम होने की संभावना है (कॉपी-एंड-पेस्ट पुन: उपयोग करने की बजाय कई लोगों को करने की प्रवृत्ति है)। यह इंटरैक्शन को ट्रैक और नियंत्रित करना और डेटा में परिवर्तन को आसान बनाता है।

घटक अभी भी मूल दायरे से बातचीत कर सकता है, लेकिन यह घटक घटनाओं से बंधे कॉलबैक के माध्यम से किया जाता है। दोबारा, यह प्रतिबंध बल या कम से कम दृढ़ता से सॉफ़्टवेयर डिज़ाइन को प्रोत्साहित करता है जो आपके घटक का पुन: उपयोग करना आसान बनाता है और यह समझता है कि घटक मूल दायरे और बाहरी तत्वों के साथ कैसे बातचीत कर रहा है।

घटक AngularJS मॉड्यूल (angular.module() द्वारा लौटाए गए .component() विधि का उपयोग करके पंजीकृत किया जा सकता है। विधि में दो तर्क होते हैं:

1) घटक का नाम (स्ट्रिंग के रूप में)।

2) घटक कॉन्फ़िगर ऑब्जेक्ट। (ध्यान दें कि, विधि .directive() के विपरीत, इस विधि एक कारखाने समारोह नहीं लेता है।)

निर्देश के लिए //

module.directive (नाम, एफ एन);

घटक

मॉड्यूल के लिए

//।घटक (नाम, विकल्प);

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