vuejs2 - 根据过滤结果展开 v-treeview
问题描述
在树视图组件中,我想打开所有有一些搜索文本的节点。但预期并没有发生。
https://codepen.io/anon/pen/MdxPKN?&editors=101
<div id="app">
<v-container grid-list-md>
<v-layout wrap>
<v-flex xs6>
<v-text-field label="search" v-model="search" box />
<v-treeview :items="tree"
:search="search"
active-class="grey lighten-4 indigo--text"
item-key="name"
open-on-click
:open-all="{searchLength}>0?true:false"
hoverable />
</v-flex>
</v-layout>
</v-container>
</div>
解决方案
所以它有点棘手,你不能使用内置的搜索功能,但有一个可以接受的简单解决方法。
您基本上必须自己实现过滤器,只需将您需要的项目发送到v-treeview
.
然后,您可以从您的过滤元素创建另一个计算属性,该属性只返回key
并将其传递给.:open
treeview
为你制作了一个codepen。
推荐阅读
- autodesk-forge - Forge 离线查看器创建新符号
- javascript - Select2 最简单的例子不起作用
- c# - 代码执行没有下降
- vue.js - 在弹出窗口中显示模板语法中的数据
- objective-c - React Native 和 Objective C 委托
- java - 为什么我在 Java 8 Lambda 中使用“Collectors.toList()”而不是“Collectors::toList”?
- python-3.x - python 3.6将字符串的一部分变成变量
- mysql - 在连接时匹配 MySQL 中的逗号分隔值
- java - 从 Postgres 获取的日期不正确
- android - 如何获取文档的单个字段