Аргумент ClockOnController не является функцией, получил неопределенный

Привет У меня были некоторые проблемы с рефакторингом моих контроллеров в их собственные фрагменты

Я хочу, чтобы контроллеры унаследовали зависимости от моего начального объявления приложения.

    "use strict";
    angular.module('clockOn', ['angular-contextual-date','logon','milli','mobile','ClockOnController','Auth','ngStorage'])

Мне нужны эти зависимости для прохождения через мои контроллеры.

      angular.module('clockOn').controller('LogonController',              ['$rootScope','$scope','$location','$localStorage','Auth', 
function($rootScope, $scope, $location, $localStorage,Auth){ 

создает ошибки неизвестного поставщика - я предполагаю, что зависимости не исчезают -

    angular.module('clockOn',[]).controller() 

создает неопределенные ошибки функции 'controllerName' - в этом сценарии я предполагаю, что я переопределяю приложение и, следовательно, теряю другие контроллеры -

Вот два из контроллеров

(function (){
angular.module('clockOn',['Auth','angular-contextual-date'])  
.controller('ClockOnController',     ['$http','Auth','contextualDateService' ,function      ($http,Auth,contextualDateService){
      this.user = Auth.getTokenClaims().user; //authorised is a property of the controller 
      contextualDateService.config.fullDateFormats.thisMonth = "MMM d 'at'  h:mm a ";    
      this.shifts = getShifts(this);

    function getShifts(clockOnCtrl){
      var date = new Date();
      var curr_date = Date.now();
      var week_from_now = Date.now()+"7";

    $http({
      method: 'GET', 
      url: '/shifts', 
      params: {"user_id":clockOnCtrl.user._id,
      "start_at":curr_date,
      "finish_at":week_from_now} 
   }).
   then(function(res){           
     if (typeof res !== 'undefined'){
       console.log(res.data);
       clockOnCtrl.shifts = res.data;         
   }},
   function(error){
     console.log(error)
   });  
}

}]);
})();

Мой индексный файл

    <!DOCTYPE html>
    <html class="container" ng-app="clockOn"> <!-- ng-app tells the html page which app/module it belongs too runs the store module on load-->
    <head>
      <meta name="viewport" content="width=device-width , initial-scale=1">
      <link rel="stylesheet" type="text/css" href="../resources/bootstrap.min.css"/>
      <link rel="stylesheet" type="text/css" href="../resources/custom.css"/>
    </head>

    <body>  
      <script type="text/javascript" src="../resources/jquery.min.js"></script>    
      <script type="text/javascript" src="../resources/angular.min.js"></script>
      <script type="text/javascript" src="../resources/bower_components/angular-contextual-date/dist/angular-contextual-date.js"></script>     
      <script type="text/javascript" src="../modules/app.js"></script>       
      <script type="text/javascript" src="../modules/logon.js"></script>
      <script type="text/javascript" src="../modules/tasks.js"></script>
      <script type="text/javascript" src="../services/milli.js"></script>
      <script type="text/javascript" src="../services/auth.js"></script>
      <script type="text/javascript" src="../modules/mobile.js"></script>
      <script type="text/javascript" src="../modules/shifts.js"></script>
      <script type="text/javascript" src="../modules/layout-components.js"></script>
      <script type="text/javascript" src="../resources/bower_components/ngstorage/ngStorage.min.js"></script>    
      <script type="text/javascript" src="../controllers/controller-clockOn.js"></script>
      <script type="text/javascript" src="../controllers/controller-logon.js"></script>    
      <script type="text/javascript" src="../controllers/controller-tasks.js"></script> 

<div class="container" ng-controller="ClockOnController as clockOnCtrl">
  <div class= "" ng-controller="LogonController as logonCtrl">
  <logon-form></logon-form>
  <top-menu></top-menu>    
  <div class="page-header" ng-show="token">
    <h2 class="">Welcome {{clockOnCtrl.user.name | uppercase}}
      <small>You currently have {{clockOnCtrl.shifts.length}} shifts</small>
    <h2>
  </div>
  <shifts-list></shifts-list>
  <custom-footer></custom-footer> 
  </div>
</div>
</body> 
</html>

Аргумент об ошибке ClockOnController не является функцией, получил неопределенное значение

0 ответов

Другие вопросы по тегам