首页 > 解决方案 > 如何使用一个搜索字符串搜索多个内容?

问题描述

我的应用程序上有一个搜索栏,如果我输入一些内容,系统会查找它(但仅限于一个特定的属性)。前任。“锤子”只在工具名称中查找。

但现在我需要放入不同类型的字符串。像“锤子”或条形码。因此,如果我输入 Hammer,我想查看名称中包含 Hammer 的所有工具,如果我在同一字段中输入条形码,我想查看条形码的结果。

希望这听起来不会令人困惑。

到目前为止,我有以下内容:

paginatedData(){
    const start = this.pageNumber * this.size,
    end = start + this.size;
    this.totalNumber = Math.ceil(this.history_entries.length / this.size);
    console.log(this.totalNumber);
    this.search_result_counter = this.history_entries.filter(data => data.tool_name.toLowerCase().includes(this.search.toLowerCase())).slice(start, end).length;
    return this.history_entries.filter(data => data.tool_name.toLowerCase().includes(this.search.toLowerCase())).reverse().slice(start, end);
  }

这仅适用于第一个描述的案例。我想我可以通过这样做来解决我的问题:

this.search_result_counter = this.history_entries.filter(data => data.tool_name.toLowerCase().includes(this.search.toLowerCase())) || data.barcode.toLowerCase().includes(this.search.toLowerCase())).slice(start, end).length;
    return this.history_entries.filter(data => data.tool_name.toLowerCase().includes(this.search.toLowerCase())) || data.barcode.toLowerCase().includes(this.search.toLowerCase())).reverse().slice(start, end);

但这似乎不是正确的方法。我想我需要把 || 某处...

标签: javascriptnode.jsvue.js

解决方案


)你的 s 前面有太多||s 检查你的括号


推荐阅读