在我的应用程序中,我想显示一定数量的复选框,并在显示按钮之前检查其中有多少复选框。
其他答案建议使用myCheckbox.isChecked()
检查每个复选框,但我现在不先验其中有多少我将拥有,因为它们代表我从数据库中获取的标签,因此它们没有特定的ID。
有没有办法在列表中使用ngFor?
答案 0 :(得分:0)
假设您有一个与复选框绑定的布尔数组(每个复选框一个布尔值)
在控制器中创建一个函数,如
function atLeast(no) { return this.boolArray.filter(e => e).length >= no }
并在ng-show / hide /中调用它,如果在模板内检查:
<my-fancy-repeater>
<checkbox ng-repeat="value in $ctrl.boolArray track by $index" ng-model="value"></checkbox>
</my-fancy-repeater>
<my-fancy-button ng-show="$ctrl.atLeast(4)"></my-fancy-button>
ofc,我不知道你是使用组件,本机元素还是其他什么,但这应该给出了这个想法