Angularjs 更好的搜索角度

Angularjs 更好的搜索角度,angularjs,Angularjs,我已经建立了一个angular应用程序,可以搜索大量对象 问题是搜索过滤器匹配返回无关搜索的字符串的任何部分。 例如 如果我搜索Steve这个名字 结果会把史蒂夫、伊芙和史蒂文带出来。我希望搜索结果返回steve和steven。 普朗克: 代码 {{item.name} 使用一个只有名称字段的对象进行复制,我得到了预期的结果(“仅限steve”和“steven”)。这表明它与name字段以外的其他内容匹配 如果希望筛选器仅使用项.name字段,请使用以下选项: <li class

我已经建立了一个angular应用程序,可以搜索大量对象

问题是搜索过滤器匹配返回无关搜索的字符串的任何部分。 例如 如果我搜索Steve这个名字 结果会把史蒂夫、伊芙和史蒂文带出来。我希望搜索结果返回steve和steven。 普朗克: 代码


  • {{item.name}

使用一个只有名称字段的对象进行复制,我得到了预期的结果(“仅限steve”和“steven”)。这表明它与name字段以外的其他内容匹配

如果希望筛选器仅使用
项.name
字段,请使用以下选项:

<li class="search-list"  ng-if="searchTerm.length > 2" ng-repeat="item in SearchItems| filter:{name:searchTerm}">

  • 请参考角材料。

    对于严格搜索,必须将对象属性标记为“搜索”字段

    例如,筛选名称
    
    相等性

    也可以尝试设置严格的限制

    ng-repeat="item in SearchItems| filter:searchTerm:strict"
    

    你能帮我装个弹夹吗?若你们搜索伊芙,史蒂夫仍然在那个里,若你们搜索巴士,他们都会显示出来。给你们。当你搜索“eve”时,你的期望值可能会重复?这会很好。但它不起作用。这是针对angularJS 1还是2AngularJS 1的,专门在1.5上测试,但在很多版本中都是这样。你能做一个plunkr让我可以看到它的运行吗?严格的搜索不要求你使用完整的单词吗?我希望人们能够开始搜索并显示相关信息。但我希望过滤器不会拾取出现在单词中的匹配项。例如,如果你搜索eve,你会看到steve,因为steve以eve结尾。谢谢walter。我尝试在plunker示例中添加“Night”并搜索steve,但它没有像你提到的那样检索到Night。你确定你的问题是正确的吗?
    ng-repeat="item in SearchItems| filter:searchTerm:strict"