显示具有匹配ID的项目

时间:2014-09-11 17:04:06

标签: javascript angularjs

我想创建一个只显示具有匹配id的项目的过滤器,此时它只能反过来运行。函数hideIds中需要更改什么?

js fiddle

NG

var app = angular.module('m', []);

app.controller('myCtrl', function ($scope) {
  $scope.subtree = [{
    id: 1,
    name: susan
}, {
    id: 2,
    name: peter
}, {
    id: 3,
    name: marc
}, {
    id: 4,
    name: julia
}, {
    id: 5,
    name: sylvia
}, {
    id: 6,
    name: martin
 }];


  var arr = [1,2,6];


$scope.hideIds = function (ids) {
    return function (item) {
        return arr.indexOf(item.id) === -1;
     }
   };
});

模板

1 个答案:

答案 0 :(得分:1)

您可以执行=== -1而不是!== -1。如果数组不包含该元素,.indexOf将返回-1。这意味着[1,2,6].indexOf(5)会返回-1,但[1,2,6].indexOf(1)会返回0