2016-03-25 18 views
0

Angularjs ng-repeat'umda sadece bir nesne var, alanlar azaldı aslında bu nesnede 40'tan fazla var. 40 tane alanım varsa o zaman 40 tane boş çıktı işleniyor (aşağıya bakınız).ng-yineleme döngüsü aracılığıyla nesne düzgün çalışmıyor

{"Name": "Raj", "Gender":"M", "Country": "India"} (ONLY ONE OBJECT) 

Eğik Görünüm

<table ng-repeat="emp in model.Employee"> 
<tr> 
<td><strong>Name:</strong></td> 
<td>{{emp.Name}}</td> 
</tr> 
<tr> 
<td><strong>Gender:</strong></td> 
<td>{{emp.Gender}}</td> 
</tr> 
</table> 

Excepted çıktı

Name: Raj 
Gender: M 

olduğu Ama dışarı fiili koymak değeri olmayan üç oluşturma süresini edilir.

Name: 
Gender: 

Name: 
Gender: 

Name: 
Gender: 
+0

Ayrıca neden 'ng-repeat' masada? Tr'' olmalıdır., Model.Employee nedir –

+0

nedir? –

cevap

2

Bu, bir dizi yerine bir nesne üzerinde yinelediğiniz için oluyor. Yani, ngRepeat döngü, nesnenizde tuşlar olduğu kadar çok kez çalışır. Nesnede üç anahtar olduğundan, döngü üç kez çalıştırılıyor. Ayrıca, emp (yinelenebilir), tam nesne yerine anahtardır ('İsim', 'Cinsiyet', 'Ülke'). Bu amaçla (anahtar, değer) kullanabilir

[{"Name": "Raj", "Gender":"M", "Country": "India"}] 
+0

doğruysa, krom konsolunu çalıştırdığımda doğru sonucu alıyorum. o zaman bu diziye dönüştürmek nasıl başka bir kaynaktan geliyor? –

+0

Boş bir dizi bildir ve nesneyi itme? –

0

: için

değişikliği.

var app = angular.module("app",[]) 
 
app.controller('ctrl',['$scope', function($scope){ 
 
     $scope.data ={"Name": "Raj", "Gender":"M", "Country": "India"}; 
 
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script> 
 

 
<div ng-app="app" ng-controller="ctrl"> 
 
<div class="item item-checkbox"> 
 
     <table > 
 
<tr ng-repeat="(key,value) in data" ng-if="key != 'Country'"> 
 
    <td>{{key}}</td> 
 
<td>{{value}}</td> 
 
</tr> 
 
</table> 
 
</div>