Angularjs 角滤波器

Angularjs 角滤波器,angularjs,angularjs-filter,Angularjs,Angularjs Filter,我有以下代码: <select name="condition" ng-options="operation.id as operation.description for operation in Operators | myfilter:criterion_id" > </select> 我想用那些operation.id等于criteria\u id的选项填充我的选择列表。如何实现这一点?您应该根据条件筛选数组并返回筛选后的数组 module.fil

我有以下代码:

<select name="condition"
    ng-options="operation.id  as operation.description for operation in Operators  | myfilter:criterion_id" > 
</select>

我想用那些
operation.id
等于
criteria\u id
的选项填充我的选择列表。如何实现这一点?

您应该根据条件筛选数组并返回筛选后的数组

module.filter('myfilter', function () {
  return function (arrayOptions, criterion_id) {
    var result = [];
    result = arrayOptions.filter(function(operation){
        return (operation.id == criterion_id);
    })
    return result;
  };
});
但是,在数据处理的复杂过滤过程中,您应该这样做,否则您应该从角度使用filter
filter

Operators  | filter: {id: criterion_id}

您应该根据条件筛选数组并返回筛选后的数组

module.filter('myfilter', function () {
  return function (arrayOptions, criterion_id) {
    var result = [];
    result = arrayOptions.filter(function(operation){
        return (operation.id == criterion_id);
    })
    return result;
  };
});
但是,在数据处理的复杂过滤过程中,您应该这样做,否则您应该从角度使用filter
filter

Operators  | filter: {id: criterion_id}

您不需要制作自己的过滤器,Angular的默认
过滤器将起作用:

<select name="condition"
    ng-options="operation.id  as operation.description for operation in Operators | filter:{id:criterion_id}" > 
</select>

您不需要制作自己的过滤器,Angular的默认过滤器将工作:

<select name="condition"
    ng-options="operation.id  as operation.description for operation in Operators | filter:{id:criterion_id}" > 
</select>

我刚刚在这里写了一些代码。。请核对:


我刚刚在这里写了一些代码。。请核对: