el-tree自定义icon
时间: 2023-10-05 11:14:47 浏览: 84
对于 el-tree 组件,你可以通过自定义 icon 属性来设置节点的图标。icon 属性可以接受一个函数,该函数返回一个带有 icon 的 VNode。以下是一个示例:
```html
<template>
<el-tree :data="treeData" :props="treeProps" :expand-on-click-node="false" :render-content="renderContent"></el-tree>
</template>
<script>
export default {
data() {
return {
treeData: [
{
label: 'Node 1',
children: [
{
label: 'Node 1-1'
},
{
label: 'Node 1-2'
}
]
},
{
label: 'Node 2'
}
],
treeProps: {
label: 'label',
children: 'children',
isLeaf: 'isLeaf'
}
};
},
methods: {
renderContent(h, { node, data }) {
const icon = h('i', {
class: 'el-icon-folder'
});
return (
<span>
{icon}
{data.label}
</span>
);
}
}
};
</script>
```
在上面的示例中,我们定义了一个 `renderContent` 方法,它接受两个参数:`h` 和 `{ node, data }`。`h` 是 createElement 函数,用于创建 VNode。`node` 是当前节点的数据对象,`data` 是当前节点的渲染数据。我们在 `renderContent` 方法中创建了一个带有 `el-icon-folder` 类的 `<i>` 元素作为图标,并将其与节点的 label 一起渲染。
你可以根据自己的需要在 `renderContent` 方法中创建不同的图标。
阅读全文