首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简化ng-repeat循环

简化ng-repeat循环
EN

Stack Overflow用户
提问于 2014-03-20 17:30:32
回答 2查看 71关注 0票数 0

下面给出我的json数据,

代码语言:javascript
复制
person = ["name": "Alex", "Cities": [{"1": "Boulder"}, {"2": "Longmont"}, {"5": "Denver"}]]

我用来迭代所有城市,如下所示,

代码语言:javascript
复制
<div id="information">
   <div ng-repeat="city in person.Cities" >
       <div ng-repeat="(id, name) in city" >
        {{name}}
        </div>
    </div>  
</div>

这种方法是可行的,但要显示城市名称,使用两个ng-repeat控制器。我正在寻找一种简单的方法来列出城市。提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2014-03-20 18:02:01

您的数据是嵌套的,这意味着一个数组位于另一个数组中。没有办法绕过这两个循环。

您可以在让数据呈现之前重新构造数据,以便只需一次循环即可遍历。

票数 1
EN

Stack Overflow用户

发布于 2014-03-20 19:05:22

你的JSON可以简化;

代码语言:javascript
复制
person = ["name": "Alex", "Cities": {"1": "Boulder", "2": "Longmont", "5": "Denver"}]

然后

代码语言:javascript
复制
<div id="information">
    <div ng-repeat="(id, cityName) in person.Cities" >
        {{cityName}}
    </div>  
</div>

如果你想保持城市的嵌套;

代码语言:javascript
复制
person = ["name": "Alex", "Cities": {"1": {name: "Boulder", somethingElse: 'something'}}]

然后像这样迭代

代码语言:javascript
复制
<div id="information">
    <div ng-repeat="(id, cityData) in person.Cities" >
        {{cityData.name}}
    </div>  
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22528635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档