【发布时间】:2014-02-11 19:41:51
【问题描述】:
我有一个来自 API 的多维数组。是否可以以编程方式循环遍历数组?
{
success: true,
categories: [{
cat_id: "2",
name: "This is category One",
description: null,
photo_url: "/img/test.png",
order: "1",
items: [{
item_id: "1",
title: "Desk",
item_url: "/690928460",
photo_url: "/desk.png",
}, {
item_id: "2",
title: "Chair",
item_url: "/18882823",
photo_url: "/chair.png",
},
}]
}]
}
我的控制器如下所示:
myApp.controller('items', function($scope, $http, $location, Data) {
var apiUrl = '/api/items';
$http.get(apiUrl).
success(function(data) {
$scope.data = Data;
$scope.allData = data;
});
$scope.changeView = function(view) {
$location.path(view);
}
});
Angular 索引文件只有:<div ng-view=""></div>
查看文件
<div class="scrollable categories-container animated-fast slideInUp">
<div class="container categories">
<div class="row" ng-repeat="categories in allData">
<div class="col-xs-6" ng-repeat="category in categories">
<div class="items">
<div class="title">
{{ category.name }}
</div>
</div>
</div>
</div>
</div>
</div>
我可以很好地遍历类别名称,但是当尝试返回 for EACH 类别的项目时,我不明白其背后的逻辑......
【问题讨论】:
-
你能解释得更好吗?
allData是什么?是不是顶部的完整 json 所以allData.success是真的? -
您的 JSON 错误,您是复制过去还是从头开始编写?项目末尾有一个额外的“,}”。
-
你尝试过做什么?这对你有什么好处:
ng-repeat="item in category.items"。然后使用{{ item.title }} -
@ZackArgyle 抱歉,是的,我是从头开始写的——忘记了 ;最后
-
@JasonGoemaat allData 是我从 API 获得的数据
标签: javascript arrays angularjs multidimensional-array