2016-05-27 8 views
0

Ich versuche, eine Liste der Benutzer von einer API mit Json anzuzeigen, aber die Daten werden in meiner Ansicht nicht angezeigt. Hierionic - Json-Daten werden in der Vorlagenansicht nicht angezeigt

ist die JS-Datei mit Fabrik und Controller:

angular.module('ionicApp', ['ionic']) 

.factory('userService', function($http) { 
     return { 
       getUsers: function(){ 
         return $http.get('https://randomuser.me/api/?results=10').then(function(response){ 
          return response.data.results; 
         }); 
       } 
     } 
}) 

.controller("Page2Ctrl",function($scope, userService){ 
     userService.getUsers().then(function(users){ 
       $scope.users = users; 
     }); 
}) 

.config(function($stateProvider, $urlRouterProvider){ 
    $stateProvider 

    .state('page2', { 
     url: "/page2", 
     templateUrl: "templates/page2.html", 
     controller: "Page2Ctrl" 
    }) 

$urlRouterProvider.otherwise('/main'); 
}); 

... und die HTML-Vorlage:

<ion-content class="padding"> 
     <p>I am Page 2!</p> 
     <ion-list> 
      <ion-item class="item-avatar" ng-repeat="item in users"> 
       <img src="{{item.user.picture.thumbnail}} " /> 
       <h2>{{item.user.name.first}} {{item.user.name.last}}</h2> 
       <p>{{item.user.location.city}} {{item.user.password}}</p> 
      </ion-item> 
     </ion-list> 
</ion-content> 

Vielen Dank für Ihre Zeit

Antwort

0

Das Workin g antwort ist ich muss verwenden: {{item.name.first}} {{item.name.last}} statt {{item.user.name.first}} {{item.user.name.last}}

0

versuchen Sie dies:

.factory('userService', function($http) { 
return { 
    getUsers: function(callback){ 
     $http({ 
      method: 'GET', 
      url: 'https://randomuser.me/api/?results=10' 
     }).success(function (response) { 
      if(response){ 
       callback(response.data.results); 
      } 
     }).error(function() { 
      callback(null); 
     }); 
    } 
    } 
}) 

.controller("Page2Ctrl",function($scope, userService){ 
    userService.getUsers(function (data) { 
       if (data) { 
        $scope.users = data; 
       } 
     }); 
}) 
Verwandte Themen