网上的这个,都是写死了3级菜单,如果有不固定的多级菜单怎么写呢?
https://my.oschina.net/yxmBet...
补充一下,是搜索不是过滤,效果是展开节点,高亮关键字。
网上的这个,都是写死了3级菜单,如果有不固定的多级菜单怎么写呢?
https://my.oschina.net/yxmBet...
补充一下,是搜索不是过滤,效果是展开节点,高亮关键字。
自定义el-tree
的节点,发一个我的用法的伪代码,这个只是高亮,我觉得还是得配合自带的筛选用,不然还得自己递归去展开数据源没必要。
<el-tree
ref="departmentTreeRef"
class="mt-4"
filterable
:props="treeProps"
:data="departmentTree"
:filter-node-method="filterNode"
@node-click="handleDepartmentSelect"
>
<template #default="{ node }">
<span
class="el-tree-node__label overflow-hidden overflow-ellipsis"
:title="node.label">
<span v-html="formatDepartmentName(node.label)"></span>
</span>
</template>
</el-tree>
const formatDepartmentName = (departmentName: string) => {
if (departmentFilterText.value.trim()) {
return departmentName.replaceAll(departmentFilterText.value.trim(), `<span style="background: #ffff48;">${departmentFilterText.value.trim()}</span>`)
} else {
return departmentName
}
}
13 回答13.1k 阅读
8 回答2.9k 阅读
3 回答1.4k 阅读✓ 已解决
2 回答5.3k 阅读✓ 已解决
5 回答1.5k 阅读
9 回答1.8k 阅读✓ 已解决
6 回答1.7k 阅读
没实际跑代码,根据你的疑问:多层级的树怎么过滤,写了下伪代码: