कर रहे हैं requirejsऔर requireएक ही?
आवश्यकता के अनुसार 2.1.15, requireऔर requirejsवैश्विक अंतरिक्ष में वास्तव में "बिल्कुल वैसा ही" है, जैसा कि इस परीक्षण से स्पष्ट किया जा सकता है कि आप कंसोल में प्रदर्शन कर सकते हैं:
> require === requirejs
true
परीक्षण रिटर्न trueआपको बताता है कि वे एक ही फ़ंक्शन ऑब्जेक्ट के समान हैं । वे दो कार्य नहीं हैं जो समान या समान कोड वाले होते हैं। वे एक ही वस्तु, काल हैं।
ध्यान दें, तथापि, जब आप निष्पादित कार्य करने के लिए पारित कर दिया सामान्य रूप से है विभिन्न वैश्विक सेdefine(['require'], function (require) {requirerequire ।
आप का उपयोग करना चाहिए requireया requirejs?
निर्भर करता है। NeedJS एक एएमडी लोडर है, लेकिन यह शहर में एकमात्र लोडर नहीं है। यदि आप एएमडी कल्पना के अनुरूप 100% कोड लिखना चाहते हैं , ताकि आपके कोड का उपयोग करने वाला कोई व्यक्ति आपके कोड को संशोधित किए बिना जो भी लोडर का उपयोग कर सकता है, तो आपको requireवैश्विक स्तर पर उपयोग करना चाहिए , क्योंकि आवश्यकताएँ के requirejsलिए विशिष्ट है। एक अन्य एएमडी लोडर इसे परिभाषित नहीं करेगा। एएमडी कल्पना परिभाषित करता है requireलेकिन नहीं requirejs।
यदि आप कुछ और लोड कर रहे हैं जो एक वैश्विक को परिभाषित करता है requireतो आपको उपयोग करना होगाrequirejs संघर्ष से बचने के लिए वैश्विक स्तर पर करना होगा।
एक मॉड्यूल के अंदर, हमेशा defineएक संदर्भ प्राप्त करने के लिए उपयोग करें require। आपको वैश्विक स्तर पर संघर्ष हो रहा है या नहीं, इसके बारे में काफी सोच-विचार करना चाहिए।