gpt4 book ai didi

javascript - 如何将 ng-repeat item 属性传递给过滤器?

转载 作者:行者123 更新时间:2023-11-27 22:54:58 25 4
gpt4 key购买 nike

我创建了一个过滤器,我想传递一个项目属性,而不是项目本身。这可能吗?

以下内容不起作用(item.param1 失败):

ng-reapeat="item in items | filter : fnFilter(item.param1)"

$scope.fnFilter = function(value) {
return value == "test";
}

最佳答案

你的问题很不清楚,因为你没有真正说出你的目标是什么。

所以,如果我只是限制我在那里看到的内容并点击链接 Angular filter exactly on object key已经由 @CeylanMumumKocabas 提供,您将拥有

ng-repeat="item in items | filter:{'param1':  'test'}"

现在让我们考虑一下您想要更复杂的东西:我看到的唯一方法是将属性的名称传递给过滤器:

ng-reapeat="item in items | myFilter:'param1'"

myApp.filter('myFilter', function () {
return function(inputs,attributeName) {
var output = [];
angular.forEach(inputs, function (input) {
if (input[attributeName] == 'test')
output.push(input);
});
return output;
};
});

请注意,如果您想要进入多个级别,则必须使用 $eval 或 make 添加一些代码才能使其工作。

关于javascript - 如何将 ng-repeat item 属性传递给过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37698771/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com