我有以下循环:
Author
我在这里循环播放:
$scope.loop = ['loopone','looptwo'];
$scope.loopone = {'one', 'two'};
$scope.looptwo = {'three', 'four'};
如何评估第二个<div ng-repeat="slug in loop">
<div ng-repeat="val in {{ slug }}">{{ val }}</div>
</div>
内的{{ slug }}
?
答案 0 :(得分:0)
使用javascript&#39; s bracket notation访问具有密钥名称的媒体资源。您可以绑定到控制器函数的结果以获取正确的数组。所以你的标记可能如下所示:
<div ng-repeat="slug in loop">
Slug: {{slug}}
<div ng-repeat="val in getValuesFromSlug(slug)">{{ val }}</div>
</div>
和javascript:
$scope.getValuesFromSlug = function (slug) {
return $scope[slug];
}
答案 1 :(得分:0)
使用可以角度评估INNER JOIN (
SELECT inv.item_key --, s.price_key
, MAX(inv.last_receive_cost / inv.last_receive_units_case) AS [unit_cost]
FROM inventory inv
INNER JOIN stores s on inv.location_key = s.store_key
WHERE inv.on_hand_inventory_qty > 0
AND inv.last_receive_cost > 0
AND inv.last_receive_units_case > 0
AND s.price_key = 29
GROUP BY inv.item_key
-- , s.price_key
) t ON r.item_key = t.item_key
and r.price_key = 29
方法,它将解决您的问题
$eval()
正如@ryanyuyu所说,<div ng-repeat="slug in loop">
<div ng-repeat="val in $eval(slug)">{{ val }}</div>
</div>
和$scope.loopone
应该是数组
$scope.looptwo
答案 2 :(得分:0)
如果您要在视图中使用树形结构,那么最简单的方法就是将它作为控制器中的树。
示例:
在控制器中:
$scope.loops = [
[1,2,3], [4,5,6]
];
在视图中:
<div ng-repeat="miniloop in loop">
<div ng-repeat="val in miniloop">{{ val }}</div>
</div>
这非常容易迭代,您可以轻松地从任一深度推送和删除元素(这将立即反映在视图中)。
你这样做的方式,尝试使用常量变量就好像它们是动态创建的一样,会引导你走上意大利面条代码和不可扩展性的道路。