2017-02-23 17 views
0

イオンベースのフレームで簡単なアプリケーションを作成して、Firebaseの使い方とデータの操作方法を学びたいと考えています。私はすべてをやったが、私のコンソールは何も見せていない。私は私のコントローラを実行することはできません。誰が何が起きているのか知っていますか?コントローラを実行できません

私はすべてを注入しましたが、少なくとも私はそうしたと思います。私はエラーが解決にあると思います。これで私を救う人がいますか?

はここに私のコントローラの:

(function(){ 
 
    'use strict'; 
 

 
    angular 
 
     .module('hsAdmin.users') 
 
     .controller('UsersCtrl', UsersCtrl); 
 

 
    UsersCtrl.$inject = ['$scope', '$state','Users' ]; 
 

 
    function UsersCtrl($scope, $state,Users){ 
 
     var vm = angular.extend(this, { 
 
      ChangeState: ChangeState, 
 
      Users:Users 
 
     }); 
 

 

 
     function ChangeState(state){ 
 
      $state.go(state); 
 
     } 
 
    }  
 
})();

ここに私のモジュールです:

(function(){ 
 
    'use strict'; 
 

 
    angular 
 
     .module('hsAdmin.users', [ 
 
      'ionic', 
 
      'ngCordova', 
 
      'hsAdmin.users' 
 
     ]) 
 
     .config(function($stateProvider) { 
 
     
 
     $stateProvider 
 
      .state('app.users', { 
 
       url: '/users', 
 
       views: { 
 
        'menuContent': { 
 
         templateUrl: 'templates/users/users.html', 
 
         controller: 'UsersCtrl as vm' 
 
        } 
 
       } 
 
       ,resolve:{ 
 
        Users: function(UsersService) { 
 
         return UsersService.GetUsers().$loaded().then(function(user){ 
 
          return user; 
 
         }).catch(function(error){ 
 
          console.log('Error when get users: ' + error); 
 
         }) 
 
        } 
 
       } 
 
      }); 
 
     }) 
 
})();

ここに私のサービスだ

(function(){ 
 
    'use strict'; 
 

 
    angular 
 
     .module('hsAdmin.users') 
 
     .factory('UsersService', UsersService); 
 

 
    UsersService.$inject = ['fb', '$firebaseArray', '$firebaseObject','$q','$rootScope']; 
 

 
    function UsersService(fb, $firebaseArray, $firebaseObject,$q,$rootScope){ 
 
     var service = { 
 
      GetUsers:GetUsers, 
 
      GetUsersById:GetUsersById 
 
     }; 
 
     return service; 
 

 
     function GetUsers(){ 
 
      var query = fb.child('/users'); 
 
      return $firebaseArray(query); 
 
     } 
 

 
     function GetUsersById(id){ 
 
      var query = fb.child('/users/' + id); 
 
      return $firebaseObject(query).$loaded(); 
 
     } 
 
    } 
 
})();

答えて

0

あなたのhsAdmin.usersモジュールを作成し、自分自身にそれを注入され、それはあなたの問題を引き起こしているものと思われます。方法を以下にコントローラを実装してみ

(function(){ 
 
    'use strict'; 
 

 
    angular 
 
     .module('hsAdmin.users', [ 
 
      'ionic', 
 
      'ngCordova', 
 
      // 'hsAdmin.users' 
 
     ]) 
 
     .config(function($stateProvider) { 
 
     
 
     $stateProvider 
 
      .state('app.users', { 
 
       url: '/users', 
 
       views: { 
 
        'menuContent': { 
 
         templateUrl: 'templates/users/users.html', 
 
         controller: 'UsersCtrl as vm' 
 
        } 
 
       } 
 
       ,resolve:{ 
 
        Users: function(UsersService) { 
 
         return UsersService.GetUsers().$loaded().then(function(user){ 
 
          return user; 
 
         }).catch(function(error){ 
 
          console.log('Error when get users: ' + error); 
 
         }) 
 
        } 
 
       } 
 
      }); 
 
     }) 
 
})();

+0

ありがとうございますが、問題が残っている:/ –

+0

@LucasGaspar JSコンソールにエラーメッセージはありますか? –

0

:以下試してみてください。

(function() { 
 
    'use strict'; 
 

 
    var UsersCtrl = function($scope, $state, Users) { 
 

 
    var vm = angular.extend(this, { 
 
     ChangeState: ChangeState, 
 
     Users: Users 
 
    }); 
 

 

 
    function ChangeState(state) { 
 
     $state.go(state); 
 
    } 
 
    } 
 

 
    UsersCtrl.$inject = ['$scope', '$state', 'Users']; 
 

 
    angular.module('hsAdmin.users').controller('UsersCtrl', UsersCtrl); 
 

 
})();

関連する問題