我写了一些这样的代码:
HTML:
<li class="js-page-item" ng-repeat="page in pageList">{{page}}</li>
js:
$scope.pageList= [1,2,3,4,5,6];
var items = $('.js-page-item');
console.log(items.length); // =>0
事实证明,当执行js代码中的第二行时,列表尚未完成。我头脑中的第一件事是使用$ timeout推迟到列表完成之后。但是,我认为这不是一个好主意。
那么,我怎么知道列表何时完成?
答案 0 :(得分:1)
你可以使用$last,如果重复的元素在迭代器中是最后一个,它是一个特殊的属性。 示例:强>
<li class="js-page-item" ng-repeat="page in pageList">{{page}} is last element:{{$last}}</li>
实例:http://jsfiddle.net/choroshin/FnfQ8/
如果您需要在ng-repeat完成时调用事件,则可以按照此stackoverflow answer或this中的示例进行操作。
答案 1 :(得分:0)