2015-10-23 3 views
0

У меня есть некоторые проблемы с angularJS Я не могу отображать данные json в свой html. мой код это:Дубликаты в ретрансляторе не допускаются

app.controller ('ServerPostsController', функция ($ сфера, $ HTTP) {

$('.loading').show(); 

    $scope.posts=[]; 

     $http.get("https://api.basebear.com/json/tables/20a3fb1d-42c7-45cb-9440-2c6d5d10403d/records?apikey=6e954b0a17b74f52b842ec2b0f0d6d0da24ac5ad"). 
     success(function(data) { 


      $scope.posts=JSON.stringify(data); 
      console.log("ok" + "data"+ $scope.posts); 

     }). 
     error(function() { 
      $('.loading').hide(); 
      console.log("no"); 

      alert("Si è verificato un errore!"); 
     }); 

}); 

и мой HTML это:

<ons-toolbar fixed-style> 
<div class="left"> 
<ons-toolbar-button onclick="menu.toggleMenu()"> 
<ons-icon icon="ion-navicon" size="28px" fixed-width="false"></ons-icon> 
</ons-toolbar-button> 
</div> 
<div class="center">Prova</div> 
</ons-toolbar> 



<section style="padding: 10px;"> 

    <ons-row style="padding: 10px 0 20px 0;"> 
    <input type="search" placeholder="Search" class="search-input" ng-model="search"> 
    </ons-row> 

    <table> 
    <tr> 
    <th>Id</th> 
    <th>Nome</th> 
    <th>Cognome</th> 
    <th>Data</th> 

</tr> 
    <tr ng-repeat="post in posts"> 
    <td>{{post.Value}}</td> 
    <td>{{post.Value}}</td> 
    <td>{{post.Value}}</td> 
    <td>{{post.Value}}</td> 

</tr> 
</table> 
</section>  

, но у меня есть эта ошибка: Дубликаты в ретрансляторе не разрешены. Используйте выражение 'track by' для указания уникальных ключей. Повторитель: сообщение в сообщениях, Duplicate k ey: string: [, Дублирующее значение: "["

Как я могу отображать данные?

ответ

0

Изменить

ng-repeat="post in posts" 

в

ng-repeat="post in posts track by $index" 

EDIT:

После просмотра данных, я понял, что это на самом деле массив объектов внутри массива. Преобразуйте это в массив объектов.

С другой стороны, если у вас нет доступа к API, изменение:

$scope.posts = JSON.stringify(data) 

в

$scope.posts = angular.toJson(data[0]) //I don't think JSON.stringify is required. 
+0

Я сделал это, но я dont'see данные; Зачем? – pinostack

+0

, скорее всего, нет свойства «Значение» сообщения. Измените post.Value, чтобы просто отправить сообщение и посмотреть, отображает ли он что-либо. –

+0

Вы можете видеть мои данные Json? https://api.basebear.com/json/tables/20a3fb1d-42c7-45cb-9440-2c6d5d10403d/records?apikey=6e954b0a17b74f52b842ec2b0f0d6d0da24ac5ad – pinostack

Смежные вопросы