Vuetify - 严格的数据表自定义过滤器



所以我有一个数据表,其中对象的名称相似且区分大小写,如"A"、"Aa"或"a",我在尝试按这些确切值过滤数据时遇到问题。我正在使用绑定到数据表搜索属性的 v-select 来过滤数据。创建自定义过滤器时,我发现的唯一两个选项是通过搜索输入过滤特定列:

customFilter(items, search, filter) {
search = search.toString().toLowerCase();
return items.filter(row => filter(row["name"], search));
}

或过滤对象键:

customFilter(items, search, filter) {
search = search.toString().toLowerCase();
return items.filter(i => (
Object.keys(i).some(j => filter(i[j], search))
))
}

根据自定义过滤器的工作方式,我似乎无法使用搜索参数而不将其设置为小写,因为删除 .toLowerCase(( 会完全破坏它并在 Objects.key 上使用不同的方法,例如 .find(( 而不是 .some(( 结果在选择"A"或"a"时仍然过滤"Aa"项目。

有什么方法可以使用自定义过滤器来准确过滤区分大小写和按字符串过滤我的项目?

谢谢!

事实证明,使用数据表的搜索和自定义过滤器是错误的方式,因为它们太受限制了。我只是将数据表链接到一个单独的数组,当我在 v-select 中选择选项时,我会自己过滤该数组。