错误: [$injector:unpr] 未知提供程序: 路由时以角度 Js $scope


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>
$scope不能在

config内注入。您只能利用注入controller $scope依赖项。从技术上讲,不可能(永远(在config阶段注入$scope,因为配置块将只允许注入提供程序。此外,配置阶段发生在应用程序引导时(特别是在运行阶段之前(。

myWebsite.config(['$routeProvider', function($routeProvider) {

注意:确保您在页面上引用了angular-route.js

最新更新