मैं अपने app.js
में Ext जे एस 4. controllers
संपत्ति का उपयोग कर एक आवेदन बना लिया है साथ Sencha Cmd का उपयोग केवल मुख्य नियंत्रक शामिल loadController() विधि देखें)। इन नियंत्रकों को गतिशील रूप से लोड किया जाता है और मेरी index.html
फ़ाइल में सूचीबद्ध नहीं हैं।गतिशील लोड नियंत्रकों
आदेश सर्वर से तैनाती के लिए उत्पादन संस्करण उत्पन्न करने के लिए मैं Sencha Cmd उपयोग कर रहा हूँ अपने आवेदन फ़ोल्डर में निम्न आदेश जारी करके:
sencha app build
उपकरण सामान्य रूप से खत्म और एक बड़ा सभी वर्गों में सभी फाइलों को संपीड़ित करता है। जे एस। समस्या यह है कि मेरे गतिशील रूप से लोड नियंत्रक उस फ़ाइल में शामिल नहीं हैं।
गतिशील रूप से लोड किए गए नियंत्रकों (कुल में 100 से अधिक) को सेन्चा सीएमडी द्वारा संसाधित और संसाधित करने का सही तरीका कौन सा है?
मुझे पता है, कि मैं उन्हें अपने app.js
में सूचीबद्ध कर सकते हैं, या कुछ Ext.require
का उपयोग कर फ़ाइल में शामिल है, लेकिन मैं 100 से अधिक विभिन्न नियंत्रकों, विचारों, मॉडल और दुकानों अपने निर्माण में स्वचालित रूप से शामिल करने के लिए सही दृष्टिकोण के लिए मांग कर रहा हूँ। मेरा मानना है कि एक्सटी जेएस के अन्य उपयोगकर्ता हैं, जो बड़े पैमाने पर अनुप्रयोग बना रहे हैं और किसी भी तरह का निर्माण कर रहे हैं और मैं किसी भी सुझाव या सिर्फ success stories
के लिए आभारी रहूंगा, जो मुझे बनाने के लिए सही तरीका खोजने में मदद करेगा।
'uses' के लिए लिंक के लिए धन्यवाद। यह उपयोगी हो सकता है। लेकिन इस तरह मेरे सभी नियंत्रकों को एक विशाल 'उपयोग' सरणी के माध्यम से शामिल किया जाएगा। और यह न केवल विकास को और जटिल बनाता है (प्रत्येक बार, जब एक नया नियंत्रक जोड़ते हैं, तो उसे इसे 'उपयोग' अनुभाग में भी जोड़ना चाहिए), लेकिन सभी नियंत्रकों को 'all-classes.js' में भी डालता है, जो गतिशील नियंत्रक लोडिंग पूर्ण बनाता है (गतिशील रूप से लोड क्यों करें, अगर नियंत्रक पहले से डाउनलोड हो चुका है और 'all-classes.जेएस'' में सभी शेष सामग्री के साथ उपलब्ध है?) – bhovhannes
@bhovhannes मुझे विकास करते समय नकारात्मकता दिखाई देती है लेकिन ध्यान दें कि यह सुनिश्चित किया जाता है कि कक्षा मौजूद है। मैं व्यक्तिगत रूप से एक सर्वरसाइड संचालित दृष्टिकोण का उपयोग करता हूं जहां फ्रंटेंड उपयोगकर्ता-भूमिका द्वारा बनाया जाता है। मुझे पता है कि जब मैं उन्हें बुलाता हूं तो मेरे नियंत्रक पहले से ही वहां हैं और यही वह सब है जो आपको परवाह करना चाहिए। लेकिन मुझे यह स्वीकार करना होगा कि मैं नहीं हूं जो सेन्चा सीएमडी उपकरण में उपयोग किया जाता है। हो सकता है कि एक तर्क है जो आपको निर्माण प्रक्रिया में एक संपूर्ण फ़ोल्डर शामिल करने की अनुमति देता है, जो एक समाधान हो सकता है जिसे आप ढूंढ रहे हैं। – sra
मैंने build.xml में एक कोड जोड़ा है, जो मेरे नियंत्रकों के सभी नाम 'उपयोग' सरणी में एकत्र करता है जब मैं 'सेन्चा ऐप बिल्ड' करता हूं। इस तरह मैं विकास के दौरान 'उपयोग' सरणी में कुछ भी नहीं भरता, बस नियंत्रकों को 'नियंत्रक' फ़ोल्डर में जोड़ता हूं, क्योंकि वे सभी मेरे ऐप से गतिशील रूप से लोड होते हैं। – bhovhannes