2012-05-03 13 views
30

मेरे पास एक जावास्क्रिप्ट आधारित लाइब्रेरी है जिसे मैं एक उल्का जेएस एप्लिकेशन में शामिल करना चाहता हूं। लाइब्रेरी स्रोत कोड को गिट रिपोजिटरी में होस्ट किया गया है और मैं अपने मेटर ऐप के लिए अपने स्रोत कोड रेपो में एक सबमिशन के रूप में रेपो को शामिल करना चाहता हूं। हालांकि, मुझे उल्का द्वारा संसाधित फ़ाइलों में से अधिकांश की आवश्यकता नहीं है, केवल कुछ चुनिंदा लोग हैं। वास्तव में "त्रुटि: पार्स नहीं कर सका .. um .. कुछ HTML फ़ाइल, कुछ पंक्ति पर। क्षमा करें" जब यह सबमिशन में कई फाइलें देखता है।एक उल्का जेएस प्रोजेक्ट निर्देशिका में फ़ाइलों को अनदेखा करना

क्या प्रोजेक्ट निर्देशिका के अंदर उल्का ऐप में शामिल करने के लिए चुनिंदा श्वेतसूची या ब्लैकलिस्ट फ़ाइलों का चयन करने का कोई तरीका है? एक स्मार्ट पैकेज बनाने के अलावा, ऐसे तरीके हैं जिनमें मैं अपने मेटीयर ऐप प्रोजेक्ट निर्देशिका के अंदर गिट सबमिड्यूल जैसे बाहरी संसाधन शामिल कर सकता हूं।

अपडेट: जैसा कि "How to create a package" के संबंधित प्रश्न में बताया गया है, यदि आप मेटियर के स्थानीय गिट चेकआउट में स्मार्ट पैकेज बनाते हैं, तो आपको पैकेज में कोड के लिए हॉट-रीलोड व्यवहार मिलता है।

उत्तर

34

/public निर्देशिका के अलावा जोनाथन का उल्लेख है, उल्का भी किसी भी निर्देशिका से अनदेखा करता है जो "।" - ताकि आप .submodules निर्देशिका बना सकें और फ़ाइलों को वहां रख सकें और उल्का उन्हें लोड नहीं करेगा।

यह शायद /public में रखने के लिए बेहतर है, ठीक है, वे सार्वजनिक नहीं हैं।

+0

अरे, हाँ मैं उन लोगों के बारे में भूल गया। तो जवाब है तो मुझे लगता है। – jonathanKingston

+0

आप उन्हें लोड करने के बारे में कैसे जाएंगे? हालांकि दिलचस्प जानकारी के लिए +1:) –

+0

आह, शानदार! इसके लिए बहुत धन्यवाद। इसके लिए एक फॉलो-अप प्रश्न: मैंने उन फ़ाइलों को सिम्लिंक करने का प्रयास किया, जिन्हें मैं वास्तव में प्रक्रिया करना चाहता हूं, फिर स्रोत फ़ाइल को बदलना, लेकिन ऐसा लगता है कि उल्का symlinked फ़ाइलों में परिवर्तन नहीं उठा रहा है। – mz2

0

नहीं, ऐसा करने का एकमात्र तरीका एक आयात स्क्रिप्ट लिखना है।

एक/सार्वजनिक डीआईआर है जिसका उपयोग आप सभी फाइलों के लिए कर सकते हैं यदि आपको इसके बारे में पता नहीं था।

व्यक्तिगत रूप से हालांकि मैं इस मुद्दे पर विचार नहीं करता क्योंकि निश्चित रूप से आप केवल एक निश्चित पथ के आधार पर फ़ाइलों को आयात नहीं करना चाहते हैं, अगर उन्होंने एक नया आवश्यक फ़ाइल जोड़ने के लिए अपना कोड बदल दिया है तो आपका भी टूट जाएगा। ऐसा कुछ नहीं है जिसे मैं तैनाती पर खोजना चाहता हूं, बल्कि निर्भरता के संस्करण के प्रत्येक परिवर्तन की योजना बनाना चाहता हूं।

+0

हाँ, मुझे पता है कि आपका क्या मतलब है, यह एक ऐसे मामले में शॉर्टकट है जहां मैं उल्का के संदर्भ में एक सबमिशन के रूप में उपयोग की जाने वाली सामग्री सक्रिय रूप से पर्याप्त रूप से बदल रहा हूं कि हर बार एक स्मार्ट पैकेज के रूप में इसे पैकेजिंग रखना दर्द होता है मैंने इसे बदला।असल में, मैं इस कोड के लिए ऑटोोडिविंग जादू का लाभ भी प्राप्त करना चाहता हूं जो कि उल्का ऐप से कड़ाई से बंधे नहीं है बल्कि कहीं और भी उपयोग किया जाता है। – mz2

19

अद्यतन: उल्का (0.6.5) की आगामी रिलीज में private निर्देशिका है जिसमें आप उन फ़ाइलों को रख सकते हैं जो क्लाइंट के लिए पहुंच योग्य नहीं हैं और सर्वर पर स्वचालित रूप से लोड नहीं होते हैं। Assets वैश्विक ऑब्जेक्ट और एपीआई आपको इन फ़ाइलों को पढ़ने की अनुमति देता है।

+0

यह उल्का की वर्तमान रिलीज के बाद सबसे सही जवाब प्रतीत होता है। – Jesse

0

यह थोड़ा अजीब लगता है, लेकिन में उल्का 1.3 है ..

/imports

..directory, कि स्वचालित रूप से उल्का द्वारा शामिल नहीं है।

यह नाम से 'मतलब'/सुझाया गया है, जो आपके अन्य कोड से 'आयात' करने वाले मॉड्यूल के लिए है। लेकिन आप इसे अपने ऐप कोड के लिए भी उपयोग कर सकते हैं, और मुझे लगता है कि यह /private से ऐप कोड के लिए एक बेहतर नाम है, लेकिन यह मेरी व्यक्तिगत राय है :-)

2

अब .meteorignore फ़ाइल के लिए भी समर्थन है (Meteor v1.5.2.1)। यह बिल्कुल .gitignore जैसा ही काम करता है।

आप उन्हें अपनी परियोजना की किसी भी निर्देशिका में उपयोग कर सकते हैं और फ़ाइल देखने प्रणाली के साथ पूरी तरह से एकीकृत हैं।

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