vue.js - 在 Vuetify-js 数据表中搜索不可见字段

标签 vue.js vuetify.js

我正在 Vuetify 中创建一个可扩展的数据表。

表格标题中仅显示 5 列。当您展开每一行时,您可以使用 item.data-table-expand 插槽获取详细信息,该插槽显示数据数组中的更多可用列。

现在我希望能够在表格上应用搜索过滤器。

我的问题是 search 指令仅在标题中声明的字段(5 列)中搜索,而我需要在其他字段中搜索。

我尝试在标题中添加可搜索字段,但无法隐藏它,因此不会显示它。

我还尝试了custom-filter来使用我自己的函数,但每个 header 字段调用一次,而不是每行调用一次(我可以访问其余字段)。

关于如何做到这一点有什么建议吗? 谢谢。

最佳答案

您可以使用自定义过滤器...

 <v-data-table
    :headers="headers"
    :items="desserts"
    :expanded.sync="expanded"
    show-expand
    single-expand
    item-key="name"
    :search="search"
    :custom-filter="customSearch">
  </v-data-table>

  methods: {
    customSearch (value, search, item) {
      return Object.values(item).some(v=>v&&v.toString().toLowerCase().includes(search))
    }
  },

https://codeply.com/p/jraMEhXaCk

关于vue.js - 在 Vuetify-js 数据表中搜索不可见字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62940776/

相关文章:

typescript - 在 mac 上构建后在 Electron 应用程序中找不到模块

vue.js - 带有局部变量的嵌套循环

javascript - 向 Vuetify 数据表行添加自定义编号

javascript - 无法使用导入的 json 将对象转换为原始值

javascript - 在另一个列表中渲染列表并使用变量

javascript - Vue.js 内联模板不显示数据

c# - Vscode 没有多个项目的智能感知/自动完成

vue.js - 如何使用 vuetify 使字体大小响应?

node.js - 将带有表单的文件从 nuxt 发送到 Node 服务器(nodemailer)

javascript - 在 VueJS 中存储图像的正确位置是什么 - 公共(public)文件夹或 Assets 文件夹?