2015-12-23 5 views
6

मैंने Angular2 का उपयोग करने में कुछ शोध करना शुरू किया और मेरे पास एक प्रश्न है जिसके लिए मुझे कोई समाधान नहीं मिल रहा है। मुझे एक आवश्यकता है कि मेरे मॉडल से प्राप्त डेटा के आधार पर, मैं किसी दिए गए घटक के लिए अलग-अलग टेम्पलेट लोड करना चाहता हूं। यह मुख्य रूप से प्राप्त डेटा के आधार पर विभिन्न लेआउट बनाए रखने से संबंधित है। क्या यह संभव है?कोणीय 2 गतिशील रूप से एक टेम्पलेट लोड कर रहा है

धन्यवाद

उत्तर

2

कोणीय 2 यूआई बिल्डिंग के लिए घटक संरचना दृष्टिकोण का पक्ष लेता है। इस वजह से आपको वास्तव में विशाल टेम्पलेट्स के साथ समाप्त नहीं होना चाहिए और यदि ऐसा है तो उन्हें कुछ सहायक उप-घटकों में विभाजित करना बेहतर विचार हो सकता है (भले ही वे लेआउट के अलावा कुछ भी प्रदान न करें)।

ऐसे मामलों में जब टेम्पलेट वास्तव में बड़ा नहीं होता है तो आप *ngIf निर्देश के साथ कुछ घटक की संपत्ति के आधार पर सशर्त रूप से प्रस्तुत कर सकते हैं।

एक और तरीका है इस दृष्टिकोण है कि घटक स्तर पर मार्गों प्रोग्राम के आप router.navigate(['./MySubcomponent'])

0

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

यदि डेटा छोटा है, तो आप अपने मुख्य घटक के टेम्पलेट में * ngSwith या * ngIf का उपयोग करके HTML के बीच स्विच कर सकते हैं।

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