我尝试使用ng-repeat来浏览嵌套的树状数组。
HTML
<div layout></div>
<script type="text/ng-template" id="layout">
<div class="layout" ng-repeat-start="data in data.nodes" ng-include="data.name"></div>
<div ng-repeat-end>End of repeater</div>
</script>
<script type="text/ng-template" id="box">
<div class="box">Box</box>
</script>
的JavaScript
var myApp = angular.module('myApp', []);
myApp.directive('layout', function() {
return {
templateUrl: 'layout',
controller: function($scope) {
$scope.data = {
'nodes': [
{
'name': 'layout',
'nodes': [{'name': 'box'}, {'name': 'box'}, {'name': 'box'}, {'name': 'box'}]
},
{
'name': 'layout',
'nodes': [{'name': 'box'}, {'name': 'box'}, {'name': 'box'}, {'name': 'box'}]
}
]
}
}
}
})
我的问题是我需要一种方法来计算出我在数组中特定级别的最后一项中的时间,但是由于Angular通过深度优先跟随递归,我无法使用ng-repeat-start
和ng-repeat-end
:
预期结果当然是:
我怎么知道自己是否处于特定级别的末尾?
答案 0 :(得分:2)
您可以使用$last
来确定每次迭代结束时的时间:
<div ng-show="$last" ng-repeat-end>End of repeater</div>
这会在你的问题中给我后一个结果。