[英]Error: [$injector:unpr] Unknown provider: AuthServiceProvider Angular Service
我有一個小的AngularJS項目,但是由於某種原因,我的服務文件無法成功注入到任何控制器中。 也許我犯了一個被忽略的小語法錯誤,但是我嘗試了幾種變體:
服務:
(function (){
'use strict';
angular
.module('tooltipEditorFrontEndApp')
.factory('AuthService', AuthService);
AuthService.$inject = ['$window', 'Restangular'];
function AuthService($window, Restangular) {
var exports = {
setAuthHeader: setAuthHeader
};
function setAuthHeader() {
if ($window.sessionStorage.getItem('token')) {
var token = angular.fromJson($window.sessionStorage.getItem('token')).token;
Restangular.setDefaultHeaders({ 'Authorization': 'Token '+token });
}
}
return exports;
}
})();
控制器:
(function (){
'use strict';
angular
.module('tooltipEditorFrontEndApp')
.controller('MainController', MainController);
MainController.$inject = ['$scope', '$window', 'Restangular', 'AuthService'];
function MainController($scope, $window, Restangular, AuthService) {
var test;
AuthService.setAuthHeader();
test = Restangular.all('states');
test.getList().then(function(states) {
$scope.states = Restangular.stripRestangular(states);
});
}
})();
加載腳本:
<!-- build:js({.tmp,app}) scripts/scripts.js -->
<script src="scripts/app.js"></script>
<script scr="scripts/services/auth.service.js"></script>
<script src="scripts/controllers/main.controller.js"></script>
<script src="scripts/controllers/login.controller.js"></script>
<script src="scripts/controllers/about.controller.js"></script>
<!-- endbuild -->
我已將Angular 1.4.1卸載並重新安裝到該項目,現在該服務可以正常工作了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.