【发布时间】:2017-09-13 09:35:37
【问题描述】:
我使用Vue2.js 和Element UI 作为框架。我希望能够过滤一个切片的表格。为此,我使用了table 和filter 组件,它们的文档可以在here 中找到。
情况正常
表格没有被切片。当你选择一个过滤器时,一个循环会遍历每一行并检查列的值是否等于过滤器。
情况不好
桌子被切片了。当您选择一个过滤器时,一个循环会遍历切片结果的每一行,并检查列的值是否等于过滤器。通过这样做,我们不会过滤“隐藏”值。
我做了一点https://jsfiddle.net/acm3q6q8/3/,这样更容易理解。
所有这些都是有道理的,因为我不是在处理整个数据,而是在切片版本上。
一种解决方案可能是通过对数据进行切片来隐藏行而不是排除它们,但我想知道是否有更好的解决方案?
我想要达到的目标
- 在
jsfiddle中,仅显示 2 项。 - 过滤
tag以仅显示标记为Office的行
实际结果
没有显示任何行,因为tag 为 office 的行不是切片表的一部分。
预期结果
过滤时,我想考虑不一定显示的行。
重要
这应该适用于多个过滤器(即我选择多个标签)
编辑
同样的,如果你想按字母顺序对名字进行排序,如果你只显示 2 项,Albert 将不会显示。
【问题讨论】:
-
标签过滤器似乎不适用于那个小提琴。
-
是的。如果您显示所有项目,一切都很好。一旦您开始对表进行切片,它只会过滤切片的表,而不是整个表。
-
我的意思是,当我选择一个标签时,什么也没有发生。
filterTag永远不会被调用。 -
它确实对我有用。我在
filterTag中添加了console.log。你能再检查一下吗? -
标签没问题,你应该选择
Confirm“Office”来过滤行(点击标签选择下的左中文单词)。
标签: javascript vue.js vuejs2