2013-03-18 1 views
9

मैं IE-8 में अपवाद नीचे का सामना करना पड़ रहा है जब मैं कोणीय संबंधित पेज लोड हो रहा है कर रहा हूँ मिल गया। यह अन्य ब्राउज़रों में ठीक काम करता है। कोई विशिष्ट कारण?SCRIPT5022: तर्क 'मॉड्यूल' कार्य नहीं है, अपरिभाषित Angular.js, लाइन 975 चरित्र 5

SCRIPT5022: Argument 'module' is not a function, got undefined 
angular.js, line 975 character 5 
+0

कुछ कोड प्रदान करें। – Stewie

उत्तर

30

मैं इस एक ही मुद्दा 'app.services' के बाद अनुगामी अल्पविराम था (जब IE < 9 पर) और यह मेरे हमेशा के लिए इसे नीचे ट्रैक करने के लिए ले लिया ...

angular.module('app', ['app.directives', 'app.filters', 'app.services', ]); 

नोट।

+1

यह जानने में बहुत मददगार है कि आईई <9 पिछला कॉमा (और दिमाग-दबाने वाला) का समर्थन नहीं करता है। मैं आमतौर पर उन्हें हर जगह उपयोग करता हूं क्योंकि यह आइटम को आसान बनाता है। – rintaun

+0

इसके लिए धन्यवाद! आईई 8 इतना मजाक है! हालांकि इतने सारे ग्राहक अभी भी इसे चला रहे हैं! – Jmorvan

+0

मेरे लिए धन्यवाद यह एक अग्रणी कॉमा था: '[, 'app.directives', 'app.filters', 'app.services']' – pulkitsinghal

1

मुझे इस तरह की त्रुटियां मिलती हैं जब मैं स्क्रिप्ट टैग को इनलाइन करने की कोशिश करता हूं जिससे आईई मेरी सभी स्क्रिप्ट लोड नहीं कर पाती है। जांचें कि क्या आपके पास अपनी सभी स्क्रिप्ट के लिए एंड टैग हैं।

इसे समझने के लिए:

<script src="js/services.js"></script> 
<script src="js/controllers.js"/> <!-- THIS IS A PROBLEM FOR IE --> 
<script src="js/filters.js"></script> 
<script src="js/directives.js"></script> 
<script src="js/myApp.js"></script> 

IE9 पर इस का परिणाम देगा:

SCRIPT5022: No module: myApp.filters 
angular.min.js, line 17 character 195 

पूरी तरह से नहीं एक ही है, लेकिन मैं इसे IE8 पर परीक्षण नहीं कर सकते। क्रोम पर हालांकि, यह पूरी तरह से काम करता है। इस बारे में अजीब बात है, वास्तव में, बात यह पता लगाने के लिए नहीं कर पा रहे है इनलाइन अंत के साथ एक निम्न स्क्रिप्ट में है। मैं वास्तव में इसे समझा नहीं सकता।

अब

, जब मैं इस तरह स्क्रिप्ट टैग बंद:

<script src="js/services.js"></script> 
<script src="js/controllers.js"></script> <!-- THIS WORKS --> 
<script src="js/filters.js"></script> 
<script src="js/directives.js"></script> 
<script src="js/myApp.js"></script> 

यह एक आकर्षण की तरह काम करता है।

यह कुल मिलाकर, AngularJS अपने मॉड्यूल 'मॉड्यूल' कहा जाता है खोजने की कोशिश करता है, लेकिन यह नहीं मिल पाई है। शायद एक स्क्रिप्ट के कारण जो लोड नहीं होता है। एक स्क्रिप्ट टैग जो इनलाइन बंद कर देता है खोजने की कोशिश करें, और यह अंत के रूप में ऊपर descibed।

उम्मीद है कि मदद करता है।

0

मैं अगर आप अभी भी एक ही समस्या के आसपास चल रहे हैं पता नहीं है, लेकिन मैं एक संभावित कारण अप मिल गया है:

जब आप किसी भी कोणीय मॉड्यूल की घोषणा आप dependences इंजेक्षन चाहिए इस तरह की कुछ:

angular.module('MyStore', ['ng','ngRoute']); 

यदि आप किसी अन्य जगह से कि मॉड्यूल आह्वान किसी भी कार्रवाई आप शायद बेमेल अगर आप dependences फिर इंजेक्षन करने का प्रयास प्रदर्शन करने के लिए ... तो आप इस तरह अपने नाम से कॉल करना होगा की जरूरत है:

angular.module('myStore') 

अन्यथा आप समाधान की तलाश में अपने दिमाग का फायदा उठाने होंगे।

मुझे आशा है कि इससे मदद मिलती है!

1

एक और चीज जो इसका कारण हो सकती है ऑब्जेक्ट गुणों के लिए कीवर्ड का उपयोग कर रही है।

statistic.import = !statistic.import; 

default: $scope.newGrid.default 

$scope.data = JSON.stringify({export: exportParams}) 

हमलावर गुण आयात, डिफ़ॉल्ट और निर्यात किया जा रहा है: मैं उपरोक्त त्रुटि वाले तीन मॉड्यूल था।

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