प्रतिक्रिया (Redux के साथ) और कोणीय 2 के बीच चयन करने के लिए 3 महीने की बहस और शोध के बाद, मेरी कंपनी में फ्रंट-एंड टीम ने एंगुलर 2 के साथ जाने के लिए निष्कर्ष निकाला है (यह देखते हुए कि यह हमारी समस्या के लिए अधिक अनुकूल है)।
हम एंटरप्राइज़ ऐप व्यवसाय में हैं, जो वर्तमान में कई अलग-अलग फ्रंट-एंड प्रौद्योगिकियों (जबकि पूरे बैकएंड RESTful होने) में शामिल है, और हम यह सब बदलना चाहते थे और भविष्य के प्रशिक्षण और गुणवत्ता नियंत्रण को आसान बनाने के लिए एक ही तकनीक है।
हमारे उत्पाद की प्रकृति को देखते हुए, यह विशाल है, और इसके भीतर मॉड्यूल हैं, जो अपने आप में एक अलग डोमेन हैं और इसे स्टैंडअलोन ऐप के रूप में बनाया जा सकता है लेकिन उत्पाद स्वयं एक ही URL में रहता है।
उदाहरण;
चलो मेरे उत्पाद को SuperApp के रूप में कहते हैं।
UI के रूप में, SuperApp में मानक लॉगिन प्रणाली और बाल मॉड्यूल / उप-उत्पादों के लिए नेविगेशन है, जैसे कि वर्कफ़्लो निम्नानुसार दिखाई देता है।
SuperApp
- उपयोगकर्ता को प्रमाणित करें
- पासवर्ड विज़ार्ड भूल जाओ
- सार्वजनिक पृष्ठ पर पहुंच के बिना
प्रमाणित उपयोगकर्ता
दिशानिर्देशन प्रणाली
- घर
- उप-उत्पाद 1
- उप-PRODUCT2
- उप-product3
प्रोफ़ाइल
...
...
समूह
...
...
- घर
ध्यान दें कि उपरोक्त प्रतिनिधित्व में, Sub-product1
और Sub-product2
दो पूरी तरह से अलग-अलग क्षेत्र हैं, पूरी तरह से अलग-अलग व्यापार डोमेन हैं।
अभी जो मैं सोच सकता हूं वह यह है कि मैं सुपरपावर को एक कोणीय 2 परियोजना के रूप में बना सकता हूं जिसमें केवल घटक और दृश्य हैं जो स्वयं के लिए प्रासंगिक हैं, और सुपरएप कई बच्चे एप्लिकेशन को लोड करने के लिए भी जिम्मेदार है; Sub-product1
, Sub-product2
(फिर से, विभिन्न कोणीय 2 परियोजनाएं, अपने स्वयं के package.json
, webpack
विन्यास, आदि) को गूंगा घटकों के माध्यम से, और एक शेल के रूप में कार्य करते हैं जो उन बच्चों के ऐप्स को रखने के लिए शीर्ष-स्तरीय रूटिंग और प्लेसहोल्डर प्रदान करता है।
एक बार, Sub-product1
शेल के भीतर लोड हो जाने पर, यह अपने स्वयं के मार्गों को वर्तमान मार्ग में जोड़ देगा जो सुपरएप पर उतरा है।
मुझे अलग करने की वजह यह है कि ये अलग-अलग ऐप (जो कि वर्तमान में एक्सटीजेएस का उपयोग करके बनाए गए हैं) ने इस पर काम करने वाली टीमों को समर्पित किया है (हम 500+ डेवलपर्स वाली कंपनी हैं), इसलिए यदि उनके पास अपने स्वयं के कोणीय प्रोजेक्ट हैं, तो वे अपने टूलिंग का प्रबंधन कर सकते हैं और भव्य माता-पिता ऐप पर भरोसा किए बिना उनकी पसंद पर निर्भरता।
लेकिन मैं आधिकारिक कोणीय डॉक्स, या वेब पर कहीं भी यह पता लगाने में असमर्थ हूं कि क्या नेस्टेड एंगुलर ऐप्स होना संभव है (इस तरह से कि फ्रेमवर्क कोड साझा किया जाता है, जबकि चाइल्ड एप्स की निर्भरता पूरी तरह से अलग हो जाती है और केवल तभी लोड होती है जब ऐप इसकी जरूरत है), या इस तरह की समस्या को हल करने के लिए कोई वैकल्पिक तरीका है।
किसी भी प्रासंगिक लेख के किसी भी मार्गदर्शन या लिंक की सराहना की जाएगी।