2016-10-04 61 views
0

我做了本教程,其中的代碼正在運行,我嘗試將其製作成我自己的代碼。但不幸的是,它不起作用。它給誒以下錯誤:

angular.min.js:84Error: [$injector:unpr] http://errors.angularjs.org/1.2.9/$injector/unpr?p0=%24templateRequestProvider%20%3C-%20%24templateRequest%20%3C-%20%24route%20%3C-%20ngViewDirective 
at Error (native) 
at http://portfolio2.gerbenboersma.com/lib/angular.min.js:6:449 
at http://portfolio2.gerbenboersma.com/lib/angular.min.js:32:125 
at Object.c [as get] (http://portfolio2.gerbenboersma.com/lib/angular.min.js:30:200) 
at http://portfolio2.gerbenboersma.com/lib/angular.min.js:32:193 
at c (http://portfolio2.gerbenboersma.com/lib/angular.min.js:30:200) 
at Object.d [as invoke] (http://portfolio2.gerbenboersma.com/lib/angular.min.js:30:417) 
at http://portfolio2.gerbenboersma.com/lib/angular.min.js:32:211 
at c (http://portfolio2.gerbenboersma.com/lib/angular.min.js:30:200) 
at Object.d [as invoke] (http://portfolio2.gerbenboersma.com/lib/angular.min.js:30:417) 

我知道這個錯誤已被更頻繁地張貼在這裏,但其中大部分是在處理複雜的代碼比我和它似乎並不適用。

,我是以下上傳就在這裏,在工作狀態下的教程:http://gerbenboersma.com/sites/AngularTests/

和我自己的代碼幾乎是相似而已,在我的最後一個版本我甚至全部採用相同的名字。那就是:

<!doctype html> 
<html lang="en" ng-app="myApp"> 
<head> 
    <title>Gerben Boersma | Portfolio | 2016</title> 
    <link rel="stylesheet" href="css/styles.css"> 
    <script src="lib/angular.min.js"></script> 
    <script src="lib/angular-route.min.js"></script> 
    <script src="js/works.json"></script> 
    <script src="js/controllers.js"></script> 
    <script src="js/app.js"></script> 
</head> 
<body> 
<div class="outer-content"> 
    <div class="green-bar"></div> 
    <div class="content" ng-view> 
    </div> 
</div> 
</body> 
</html> 

而且controllers.js:

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

artistControllers.controller('ListController', ['$scope', '$http', function($scope, $http) { 
    $http.get('js/works.json').success(function(data) { 
    $scope.works = data; 
    $scope.artistOrder = 'name'; 
    }); 
}]); 

而且app.js:

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

myApp.config(['$routeProvider', function($routeProvider) { 
    $routeProvider. 
    when('/list', { 
    templateUrl: 'partials/list.html', 
    controller: 'ListController' 
    }). 
    otherwise({ 
    redirectTo: '/list' 
    }); 
}]); 

我一直在看這些作品太長時間,並且它不是甚至沒有那麼多。但我無法找到問題。根據AngularJS Error引用,我可能會錯誤地指出事物的命名方式,但在這些最新版本中,我甚至沒有更改原始教程示例中的名稱,這似乎工作得很好。 我希望有人能夠對此有所瞭解。

+0

檢查角度和角路由版本..他們可能是相互衝突...... –

回答

1

您正在使用角1.2.9與新的角度路線1.5.8,這導致提到的問題,只是使用角1.5.8而不是1.2.9,我創建了plunker:http://plnkr.co/edit/szCGtnZQsXYFkTrjBNZZ?p=preview,嘗試取消註釋1.2.9和評論1.5.8版本的角度,和問題將被複制

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.js"></script> 
<!-- <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.9/angular.min.js"></script> --> 
+0

偉大啊!這確實是問題所在。非常感謝您的回答! :) – GeirrBenayahu