<template> <div> <el-input placeholder="输入关键字进行过滤" v-model="filterText"> </el-input> <el-button type="primary" @click="click">查询</el-button> <el-tree class="filter-tree" :data="data" :props="defaultProps" default-expand-all :filter-node-method="filterNode" ref="tree"> </el-tree> </div> </template> <script> export default { // watch: { // filterText (val) { // this.$refs.tree.filter(val) // } // }, methods: { click () { this.$refs.tree.filter(['三级', '三级 1']) }, filterNode (value, data) { console.log(...arguments) if (!value) return true return data.label.indexOf(value) !== -1 // return value.includes(data.label) } }, data () { return { filterText: '', data: [{ id: 1, label: '一级 1', children: [{ id: 4, label: '二级 1-1', children: [{ id: 9, label: '三级 1-1-1' }, { id: 10, label: '三级 1-1-2' }] }] }, { id: 2, label: '一级 2', children: [{ id: 5, label: '二级 2-1' }, { id: 6, label: '二级 2-2', children: [{ id: 9, label: '三级 2-2-1' }, { id: 10, label: '三级 2-2-2' }] }] }, { id: 3, label: '一级 3', children: [{ id: 7, label: '二级 3-1' }, { id: 8, label: '二级 3-2' }] }], defaultProps: { children: 'children', label: 'label' } } } } </script>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。