错误:[$injector:unp]未知提供程序:AuthServiceProvider角度服务

Error: [$injector:unpr] Unknown provider: AuthServiceProvider Angular Service

本文关键字:程序 AuthServiceProvider 服务 未知 injector unp 错误      更新时间:2023-09-26

我有一个小型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卸载并重新安装到项目中,现在服务可以正常工作了。