2015-07-20 88 views
0

我也想用ng-repeat显示键“scott”和“bill”及其所有属性值(全名和年龄)。你会如何重复这个

{ 
    "attributes": { 
     "scott": { 
      "fullname": "Scott D Man", 
      "age": "string" 
     }, 
     "bill": { 
      "fullname": "William Shatner", 
      "age": "string" 
     } 
    }, 
    "id": "HJK321", 
    "reportDate": "20150719" 
} 
+0

看看这一个想法...... HTTP:使用 //stackoverflow.com/a/31489211/145682 – deostroll

回答

5

您可以在对象属性这样的循环:

<div ng-repeat="(key,value) in model.attributes"> 
    <span>Name : {{key}}</span> 
    <span>Full Name : {{value.fullname}}</span> 
    <span>Age : {{value.age}}</span> 
</div> 

plunk

+0

如果什么而不是,并作为ng模型的关键? – devwannabe

+0

我会发表另一个问题。我注意到我的JSON假设使用数组作为反对对象。 – devwannabe

1

你可以这样说:

<div ng-app> 
    <div ng-controller="ClickToEditCtrl"> 
    <p>Your Data:</p> 
    <ul> 
     <li ng-repeat="(key, value) in data.attributes"> 
      firstname: {{key}}, fullname: {{value.fullname}}, age: {{value.age}} 
     </li> 
    </ul> 
</div> 

看看这个jsFi ddle:http://jsfiddle.net/vyzsw565/

1
<div ng-repeat='(user, description) in data.attributes'> 
     {{user}} 
     <div ng-repeat='(key, val) in description'> 
     <span>{{key}} : {{val}}</span> 
     </div> 
     <hr> 
    </div> 
0

看看这个工作Jsfiddle

<div ng-app="mainApp"> 
    <div ng-controller="mainController"> 
     <div ng-repeat="d in data"> 

      Name:  {{d.attributes.scott.fullname}} ,   
      Age :  {{d.attributes.scott.age}}  

      Name:  {{d.attributes.bill.fullname}} ,   
      Age :  {{d.attributes.bill.age}}  

     </div> 
    </div> 
</div> 
+0

它会工作,但每次数据发生变化时,它都会变成重构的噩梦 – devwannabe