2017-02-23 3 views
0

Ich versuche, eine einfache App mit ionischen Rahmen zu tun, um zu lernen, wie Firebase zu verwenden und Daten zu bearbeiten. Ich habe alles gemacht, aber meine Konsole zeigt nichts. Ich kann meinen Controller nicht ausführen. Weiß jemand, was passiert?Kann den Controller nicht ausführen

Ich habe alles injiziert, zumindest glaube ich, dass ich es getan habe. Ich schätze der Fehler liegt in der Auflösung. Gibt es jemanden, der mich damit retten kann?

Hier ist mein Controller:

(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); 
 
     } 
 
    }  
 
})();

mein Modul hier:

(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); 
 
         }) 
 
        } 
 
       } 
 
      }); 
 
     }) 
 
})();

Hier ist mein Dienst

(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(); 
 
     } 
 
    } 
 
})();

Antwort

0

Sie Ihre hsAdmin.users Modul erstellen und es dann in sich selbst injizieren, das ist wahrscheinlich, was Ihr Problem verursacht. die folgenden Versuchen:

(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

Danke, aber das Problem bleibt:/ –

+0

@LucasGaspar Gibt es eine Fehlermeldung angezeigt, in der JS-Konsole? –

0

Versuchen zu implementieren Controller in Art und Weise folgen.

(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); 
 

 
})();

Verwandte Themen