从AngularJS中的函数返回单个true

时间:2016-02-04 10:45:37

标签: angularjs

我在使用函数返回单个truefalse

时遇到了一些麻烦

基本上我有一个如下的数组;

orderItem包含menu_modifier_groups,其中包含menu_modifier_items

现在每个menu_modifier_groups都有一个属性max_selection_points。 使用menu_modifier_itemsng-repeat一起显示checkboxes,并ng-model = item.selected

我想要做的是能够遍历所有menu_modifier_groups,并通过将它们与每个menu_modifier_items的{​​{1}}进行比较来确定是否已选择了所需的max_selection_points

这是我到目前为止所拥有的

menu_modifier_groups

任何帮助/建议表示赞赏

1 个答案:

答案 0 :(得分:2)

您的代码应为

$scope.isValid = function(orderItem) { 
  //By default make it false
  var IsAllSelected = false;
  angular.forEach(orderItem.menu_modifier_groups, function(group) {
    var count = 0;                
    angular.forEach(group.menu_modifier_items, function(item) {
      count += item.selected ? 1 : 0;
    });
    if (count == group.max_selection_points) {
      IsAllSelected = true;
    } else {
      //if one item failed All select do return false
      IsAllSelected = false;
    }
  });
  return IsAllSelected;
}