[javascript] 모듈 [$ injector : unpr]을 인스턴스화하지 못했습니다. 알 수없는 제공자 : $ routeProvider

AngularJS 1.0.7 에서 1.2.0rc1로 업그레이드 할 때이 오류가 발생 했습니다 .



답변

ngRoute 모듈은 더 이상 코어 angular.js파일의 일부가 아닙니다 . $ routeProvider를 계속 사용하는 경우 이제 angular-route.jsHTML 에 포함해야합니다 .

<script src="angular.js">
<script src="angular-route.js">

API 참조

또한 ngRoute응용 프로그램에 대한 종속성 으로 추가 해야합니다.

var app = angular.module('MyApp', ['ngRoute', ...]);

대신 등을 사용하려는 경우 모듈 angular-ui-router에서 $routeProvider종속성을 제거하고 .config()선택한 관련 공급자 (예 :)로 대체하십시오 $stateProvider. 그런 다음 ui.router종속성 을 사용합니다 .

var app = angular.module('MyApp', ['ui.router', ...]);


답변

scotty의 답변에 추가 :

옵션 1 : JS 파일에 이것을 포함 시키십시오 :

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular-route.min.js"></script>

옵션 2 : 또는 URL을 사용하여 ‘ angular-route.min.js ‘를 로컬 에 다운로드 하십시오.

그런 다음 (선택한 옵션)이 ‘ngRoute’를 종속성으로 추가하십시오.

설명 :
var app = angular.module('myapp', ['ngRoute']);

건배!!!


답변

제 경우에는 파일이 잘못된 범위로 축소 되었기 때문입니다. 배열을 사용하십시오!

app.controller('StoreController', ['$http', function($http) {
    ...
}]);

커피 구문 :

app.controller 'StoreController', Array '$http', ($http) ->
  ...


답변