में आलसी लोडिंग टेम्पलेट्स मैं जावास्क्रिप्ट ऐप के लिए आलसी लोडिंग करने के लिए require.js का उपयोग करता हूं। मुझे एक उल्का ढेर पर स्विच करना अच्छा लगेगा लेकिन अभी ऐसा लगता है कि मीटियर प्रारंभिक लोड के माध्यम से पूरे ऐप (सभी टेम्पलेट्स) भेजता है। क्या किसी को requ.js और उल्का या किसी अन्य कार्यान्वयन के साथ सफलता मिली है?मेटीर
मेटीर
उत्तर
आप अलग-अलग प्रश्न पूछ रहे हैं, लेकिन निश्चित रूप से वे जुड़े हुए हैं। पहला जावास्क्रिप्ट कोड को उल्का ऐप में लोड करने के बारे में है। बेशक आप requirejs
जैसी चीज का उपयोग कर सकते हैं। यह ठीक से काम करना चाहिए कि आपका आलसी कोड public
उल्का प्रोजेक्ट की निर्देशिका में स्थित है। हालांकि, मेरा अनुभव यह है कि requirejs
पागल हो जाता है जब public
की सामग्री अक्सर अद्यतन हो जाती है, उदाहरण के लिए विकास वातावरण में। शायद यह पुस्तकालय को अनुकूलित करने की बात है, लेकिन मैं कुछ हल्के घर के बने पैकेज का उपयोग करने की सिफारिश करता हूं। here देखें, अगर आपको कुछ प्रेरणा की आवश्यकता है।
दूसरा प्रश्न आलसी टेम्पलेट परिभाषा के बारे में है। प्रत्येक टेम्पलेट में दो भाग होते हैं। पहला html
कोड है, जो handlebars
सिंटैक्स में लिखा गया है, दूसरा जावास्क्रिप्ट कोड है जिसे आप परिभाषित करने के लिए लिखते हैं कि आपका टेम्पलेट कैसा व्यवहार करना चाहिए (जैसे सहायक, ईवेंट हैंडलर)। दूसरा भाग आसान है, जब तक हम मानते हैं कि हम पहले से ही आलसी कोड को लोड करने के लिए जानते हैं (उपर्युक्त पैराग्राफ देखें) और टेम्पलेट, इसे myLazyTemplate
पर कॉल करने दें, पहले से ही परिभाषित किया गया है, इसलिए मूल रूप से Template.myLazyTemplate
undefined
नहीं है। तो बाद वाले को कैसे प्राप्त करें?
गतिशील रूप से एक नया टेम्पलेट परिभाषित करने के लिए आपको क्लाइंट पर Template.__define__(name, raw_func)
पर कॉल करने की आवश्यकता होगी। तो आखिरी सवाल यह है कि "raw_func
क्या है?"। यह जो सामान्य रूप से सर्वर पर स्वचालित रूप से बनाया जाता है और फिर ग्राहक के लिए तार नीचे भेजा जब एप्लिकेशन लोड हो जाता है अपने एचटीएमएल कोड का एक संकलित संस्करण है (here देखने को देखने के लिए कि यह कैसे उल्का में किया जाता है)। लेकिन हम इसे गतिशील रूप से करना चाहते हैं, है ना?
तो विचार Handlebars.to_json_ast
दिनचर्या की सहायता से टेम्पलेट कोड को मैन्युअल रूप से संकलित करना है। आप इसे अपने टेम्पलेट एचटीएमएल कोड से खिला सकते हैं, और आउटपुट कुछ जावास्क्रिप्ट सरणी है जिसे किसी भी समय क्लाइंट को भेजा जा सकता है जिस विधि से हमने पहले ही बात की है। आखिरी चीज आपको सर्वर पर Handlebars.json_ast_to_func
पर कॉल करना है, सर्वर से भेजे गए डेटा का उपयोग केवल तर्क के रूप में करना है। Handlebars.json_ast_to_func
द्वारा उत्पादित आउटपुट raw_func
है जिसका उपयोग आप myLazyTemplate
टेम्पलेट का उत्पादन करने के लिए कर सकते हैं।
मुझे पता है कि यह केवल एक कठिन विचार है, न कि आपकी समस्या का पूरा समाधान। मुझे आशा है कि इससे आपको अपने अंतिम समाधान को जानने में मदद मिलेगी।
- 1. मेटीर
- 2. मेटीर
- 3. मेटीर
- 4. मेटीर
- 5. मेटीर
- 6. मेटीर
- 7. मेटीर
- 8. मेटीर
- 9. मेटीर
- 10. मेटीर
- 11. मेटीर
- 12. मेटीर
- 13. मेटीर
- 14. मेटीर
- 15. मेटीर ऐप
- 16. मेटीर जेएस
- 17. मेटीर ऐप
- 18. वापसी मेटीर। परिणाम
- 19. मेटीर उपयोगकर्ता दस्तावेज़
- 20. मेटीर ऐप (लोकलहोस्ट)
- 21. वास्तव में मेटीर
- 22. मोचा परीक्षण मेटीर
- 23. बूटस्ट्रैप 3 टेबल मेटीर
- 24. मेटीर में JSON एंडपॉइंट
- 25. मेटीर जेएस में सबडोमेन रूटिंग
- 26. मेटीर/हैंडलबार्स में टेम्पलेट डीबग कैसे करें?
- 27. मेटीर फ़ाइलों को अनदेखा कैसे करें?
- 28. मेटीर का पैकेज.जेएस कैसे काम करता है?
- 29. आप एक आरईएसटी एपीआई कैसे बनाते हैं और मेटीर
- 30. आप मेटीर में क्लाइंट को सशर्त रूप से डेटा कैसे भेजते हैं?
एक बहुत ही विस्तृत उत्तर के लिए धन्यवाद, यह केवल विवरण का स्तर था जिसे मैं ढूंढ रहा था। – James
यह उत्तर शायद पुराना है। देखें [मीटरी में मांग पर आलसी लोड टेम्पलेट्स कैसे करें] (https://stackoverflow.com/a/28334315/1269037), और इसके लिए उपलब्ध पैकेज 2015 के रूप में उपलब्ध हैं। –