api.use
अन्य संकुल निर्यात प्रतीकों के लिए एक पैकेज पहुँच देता है; आप imply
का उपयोग आप बाहर अपने package:dependant
अगर यह स्पष्ट है मैं नहीं जानता कि package:name
से कुछ उपयोग करना चाहते हैं की जरूरत है।
उदाहरण के लिए आप api.use("random")
(see how it's done in the accounts-base package) आप एक पैकेज कोड (see how the random
package.js
is api.export
ing Random
) में Random
प्रतीक उपयोग करना चाहते हैं की जरूरत है।
हालांकि, meteor add
आईएन accounts-base
आपके पूरे एप्लिकेशन को अपने उपयोग किए गए पैकेज (random
इस मामले में) तक पहुंच नहीं देगा। यदि आपके ऐप को random
की आवश्यकता है, तो आपको अभी भी meteor add
की आवश्यकता होगी।
दूसरी ओर api.imply
, कि पैकेज निर्यात प्रतीकों के लिए पूरे आवेदन पहुँच देता है।
उदाहरण के लिए, see how accounts-google
is api.imply
ing accounts-base
।
accounts-base
is responsible for exporting the Accounts
symbol, जब आप meteor add accounts-google
, न केवल accounts-base
भी अपने आवेदन निर्भरता में जोड़ा जाता है करता है, लेकिन accounts-base
प्रतीकों भी अपने अनुप्रयोग में उपलब्ध कराया जाता है, विशेष रूप से, क्योंकि यह निहित था।
accounts-base
दोनों का अपना कोड (api.use
) में Accounts
का उपयोग कर और पूरे एप्लिकेशन (api.imply
) के लिए अपनी निर्भरता प्रतीकों के निर्यात है।
api.imply
का उपयोग "छाया पैकेज" बनाने के लिए किया जा सकता है जो कि कुछ अन्य पैकेजों में खींच रहे हैं।
उदाहरण के लिए, कुछ बिंदु पर एमडीजी showdown
पैकेज markdown
नाम दिया, वे तो बस meteor remove showdown && meteor add markdown
बताई जा सकता था, लेकिन यह अंत उपयोगकर्ताओं पर कुछ कार्रवाई के लिए आवश्यक होता है।
इसके बजाय उन्होंने showdown
पैकेज और make it implying the new markdown
package को रखते हुए क्या किया है।
मैंने माना कि 'api.export' हमेशा पूर्ण प्रोजेक्ट में निर्यात किया गया है! असल में, इसका उपयोग ऑब्जेक्ट्स को निर्यात करने के लिए किया जाता है जिसे कई तरीकों से आयात किया जा सकता है: पूरे प्रोजेक्ट ('उल्का एड') को, पैकेज ('api.use') या दोनों (' api.imply') के दायरे में। अंतर्दृष्टि के लिए धन्यवाद! –
यह अवधारणा मूल रूप से एनपीएम पैकेजों में पुन: निर्यात करने जैसा ही है, उदाहरण के लिए, ईएस 6 में: 'अन्य पैकेज' से 'निर्यात {Foo} या कॉमनजेएस में: 'export.Foo = आवश्यकता (' अन्य-पैकेज ') .Foo'। उल्का 1.3 अब एनपीएम मॉड्यूल का समर्थन करता है, बस आपके एनपी की रूट निर्देशिका में 'एनपीएम इंस्टॉल' का समर्थन करता है, फिर आपको अपने ऐप कोड में जो भी चाहिए ('') (' '' '' '' की आवश्यकता होती है (या फिर से निर्यात करने वाले पैकेज लिखें चीजें, और वैकल्पिक रूप से उन्हें वायुमंडल के बजाय एनपीएम पर प्रकाशित करें)। – trusktr
शायद मैं इसे गलत समझ रहा हूं लेकिन मुझे वास्तव में एक पैकेज जोड़ने वाले उल्का के बीच का अंतर नहीं समझता है, जो इसे स्पष्ट रूप से सूचीबद्ध/परिभाषित करता है, और api.imply'ing। ऐसा लगता है जैसे वे अनिवार्य रूप से वही काम करते हैं, लेकिन यह api.imply का मतलब है कि अब आपके पास संभावित रूप से संकुल का एक समूह उपलब्ध है जो खोजने/बनाए रखने में मुश्किल है क्योंकि वे पैकेज परिभाषाओं के वर्गीकरण में भरे हुए हैं। क्या मैं इसके बारे में सही हूं, और यदि हां, तो उल्का में क्या ताकत है? – dudewad