在angularJS forEach上的条件是什么

时间:2016-02-09 01:41:56

标签: javascript angularjs

是否可以在WHERE angularJS循环中应用forEach条件?

angular.forEach(i.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;
    }
});

我想应用WHERE条件告诉angular要循环的项目。

例如

i.menu_modifier_groups WHERE group.min_selection_points > 0

感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用过滤器来获取过滤后的数据。即比如我.menu_modifier_groups.filter(function ...)

请在下面找到一个小工作示例。

var arr = [];

var obj = {x: 54, y: 10};
arr.push(obj);
var obj1 = {x: 14, y: 10};
arr.push(obj1);

var finalAccrualRows = arr.filter(function (object) {
                        return object.x===54?false:true;
                    });
alert(finalAccrualRows.length);

所以对于你的情况来说就像

var finalGroups = i.menu_modifier_groups.filter(function (group) {
return (group.min_selection_points > 0)?true:false;
});

它只是一个list.filter()函数来过滤列表,希望这对你有帮助。