我正在尝试使用基本的HTML& amp;创建一个强大的过滤系统。 angular.js,到目前为止,在这里的几个人的帮助下,我最终得到了这个:
http://codepen.io/liamtarpey/pen/jfvDK
它工作正常,唯一的问题是如果你向后输入一些东西,例如,如果用户搜索:'taco mexican'或甚至'mexican taco',你根本就得不到任何结果。
有没有办法将过滤器用作更多关键字过滤器而不是字符串过滤器?
答案 0 :(得分:0)
您必须遍历搜索字词中每个字词的每个属性。这有效:
$scope.search = function(user) {
var match = true;
$scope.query.split(" ").forEach(function(word) {
if (match === true) {
var wordMatch = false;
for (var prop in user) {
if (user.hasOwnProperty(prop)) {
if(user[prop].toLowerCase().indexOf(word.toLowerCase()) > -1) wordMatch = true;
}
}
}
match = wordMatch;
});
return match
}