我正在努力寻找一种解决方案,以便在ng-repeat中获得ng-repeat中项目的长度。如果是第二次重复,我只能得到items.length。如果我试图在孩子外面访问它,它什么都不呈现。那么如何访问父ng-repeat之外的范围呢? 示例代码:
<ul>
<li ng-repeat="item in items">
{{item.some.model}}
<ul>
<li ng-repeat="moreItem in moreItems">
{{moreItem.someother.model}}
</li>
{{moreItem.someother.model.length}} does work
</ul>
</li>
</ul>
{{moreItem.someother.model.length}} Doesnt work
答案 0 :(得分:0)
$ scope.parent是您如何影响父范围。 $ scope.root是您对根范围的影响。希望这有帮助!
答案 1 :(得分:0)
好的,感谢您的帮助,但我找到了一种使用jQuery完成任务的简单方法。问题是如果孩子的长度为ng-repeat scope.length === 0,如何验证表单提交按钮。但是由于你不能在父范围之外访问这个子范围,我只是写了这样的简单jQuery,问题解决了:
suppQuestCtrl.checkQuestions = function(){
$timeout(function(){
setInterval(function(){
var qLength = jQuery('li#questions-text');
if(qLength.length === 0){
jQuery('#save-button.btn.btn-save').addClass('disabled')
} else{
jQuery('#save-button.btn.btn-save').removeClass('disabled')
}
},500)
},500)
}; suppQuestCtrl.checkQuestions();