2015-09-15 8 views
6

मेरे पास एक मुख्य मॉड्यूल है, जो ngRoute सेवा लोड करता है।कैसे angularjs संदर्भ मॉड्यूल लोड निर्भरता

angular.module("app", ["ngRoute", "app.settings"] 

और मेरे app.settings मॉड्यूल ngRoute सेवा,

angular.module("app.settings", []) 
    .config(["$routeProvider", function($routeProvider){ 
     $routeProvider.when("/settings", { 
      template: "{{message}}", 
      controller:"SettingsController" 
     }); 
}]) 

लोड नहीं है लेकिन मैं इस मॉड्यूल में $routeProvider उपयोग कर सकते हैं।

क्या कोणीय मॉड्यूल लोडिंग ऑर्डर परवाह नहीं है? क्या मैं किसी भी मॉड्यूल को किसी भी मॉड्यूल लोड कर सकता हूं?

उत्तर

2

बात यह है कि अपने app मॉड्यूल ngRoute लोड कर रहा है, और यह भी अपने app.settings मॉड्यूल लोड कर रहा है, इसलिए निर्भरता पहले से ही अपने कोणीय आवेदन में इंजेक्ट किया जाता है, तो फिर से इंजेक्शन की कोई जरूरत नहीं है।

क्या कोणीय मॉड्यूल लोडिंग ऑर्डर परवाह नहीं है? आदेश कोणीय पहले निर्भरता को हल कोई फर्क नहीं पड़ता और फिर मॉड्यूल, नियंत्रक आदि संकलित

angular.module("app", ["ngRoute", "app.settings"] 

रूप

angular.module("app", ["app.settings", "ngRoute"] 

एक ही है लेकिन अगर आप कुछ यूनिट टेस्ट में मुसीबतों में चला सकते हैं परिदृश्य यदि आप केवल मॉड्यूल app.settings लोड करते हैं तो आपका परीक्षण विफल हो जाएगा। लेकिन ज्यादातर मामलों में आप app मॉड्यूल और आपके कोणीय अनुप्रयोग के सभी मुख्य मॉड्यूल लोड करने जा रहे हैं।

क्या मैं किसी भी मॉड्यूल पर निर्भरता लोड कर सकता हूं? संक्षिप्त उत्तर, हाँ।

लांग जवाब: आपका ngRoute निर्भरता मुख्य मॉड्यूल में लोड किया जाना चाहिए, क्योंकि जो कुछ अपने app मॉड्यूल, बुनियादी रूटिंग परिभाषित करने के लिए इसकी आवश्यकता है, तो निर्भरता कई मॉड्यूल में लोड किया जाता है किसी भी त्रुटि फेंक नहीं जा रहा है जा रहा है है , वास्तव में आपको प्रत्येक मॉड्यूल द्वारा आवश्यक सभी निर्भरताओं को जोड़ना चाहिए क्योंकि बड़े अनुप्रयोगों मेंकोई गारंटी नहीं है कि ngRoute/myFactory/आदि पहले ही लोड हो चुका है। पठनीयता

सुधार करने के लिए

अद्यतन

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