2014-11-09 4 views
1

실험을 위해 자바 스크립트 파일을 인라인하고 싶었는데 예기치 않은 동작이 나타났습니다.AngularJS - Uncaught ReferenceError : a가 정의되지 않았습니다.

모든 것이이 같은 정상적인 각도 가져 오기 잘 작동 : 그러나

<html> 
    <head> 
    <script src="/js/angular.js"></script> <!-- Works fine! --> 
    <script> 
     var app = angular.module('example', []); 
    </script> 
    ... 
    </head> 
    ... 
</html> 

, 그것은 예외가 발생 나는이 같은 각도 소스 코드를 인라인 경우 :

<html> 
    <head> 
    <script>// Minified Angular source code </script> 
    <script> 
     var app = angular.module('example', []); 
    </script> 
    ... 
    </head> 
    ... 
</html> 

예외 :

Uncaught ReferenceError: a is not defined 
+1

모든 코드가 인라인 되었습니까? 'a'가 정의되지 않은 위치 (행 번호, 열 번호)를 살펴보십시오. –

+0

긍정적 인. AngularJS는 내부에서 자신의 범위를 호출합니다. – TheConfusedJSer

+0

비 축소 버전에서는이 방법을 시도해야합니다. 오류가 발생하면 더 자세한 오류가 표시됩니다. 실패하지 않으면 copy-paste 문제이거나 다른 것일 수 있습니다. – mattr

답변

1

yeoman + grunt와 함께 나에게 일어난다. 당신이 축소를하기 전에이처럼 컨트롤러가 설치되어 있는지 확인하십시오 :

angular.module('project').controller('MainCtrl', [ 
    '$scope', 
    function ($scope) { } 
]); 

그리고이 같은 하지 :

angular.module('project').controller('MainCtrl', 
    function ($scope) { } 
); 

내가 정확히 기억한다면, 방법과 종류의 자사의 "버그"각 주입한다 종속성

+0

각도 1.3이므로 각도 앱을 부트 스트랩 할 때 [엄격한 DI 모드] (https://github.com/angular/angular.js/commit/4b1695ec61aac8de7fcac1dfe8b4b420f9842c38)를 사용하면 문제를 방지 할 수 있습니다. – glepretre

관련 문제