错误:[$ injector:unpr]未知提供者:路由时角度Js中的$ scope

时间:2017-04-10 09:49:20

标签: javascript angularjs angular-ui-router angularjs-controller ngroute

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


myWebsite.config(['$scope', '$routeProvider', function($routeProvider) {
    $routeProvider
    .when("/home", {
        templateUrl : "index.html",
    })
    .when("/about", {
        templateUrl : "views/about-view.html",
    })
    .otherwise({
        redirectTo : "/home"
    });
}]);

myWebsite.controller('myWebsiteCtrl', ['$scope', function($scope){
    console.log("angular is initialised");
}]);

myWebsite.controller('aboutCtrl', ['$scope', function($scope){
    console.log("about controller is initialised");
}]);

此代码给出错误错误:[$ injector:unpr]未知提供者:$ scope。 我在标题

使用这些行
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.3/angular.js">`enter code here`</script>

<script src="https://code.angularjs.org/1.6.3/angular-route.js"></script>

1 个答案:

答案 0 :(得分:3)

$scope无法在config块内注射。您可以仅在$scope上注入controller依赖关系。从技术上讲,({1}}阶段不能(从不)注入$scope,因为配置块只允许注入提供者。另外,配置阶段发生在应用程序引导时(特别是在运行阶段之前)。

config
  

注意:确保您在页面

上引用了myWebsite.config(['$routeProvider', function($routeProvider) {