mirror of
https://github.com/element-plus/element-plus.git
synced 2026-03-13 07:51:17 +08:00
* feat(components): add virtual tree * perf: optimize compute performance * perf: optimize update checked states performance * feat(components): [tree-v2] supports filter method * feat(components): [el-tree-v2] exposes check api * feat(components): [el-tree-v2] exposes current api * feat(components): [el-tree-v2] support contextmenu event * style(components): [el-tree-v2] optimized code style * refactor(components): [el-tree-v2] using svg icon * refactor(components): [el-tree-v2] replace all PropType with buildProp replace all PropType with buildProp, support perfMode, expose setData * refactor: improve prop * docs: [el-tree-v2] improve documention * refactor(components): [el-tree-v2] optimized code Co-authored-by: Kevin <sxzz@sxzz.moe>
18 lines
535 B
TypeScript
18 lines
535 B
TypeScript
import { h, defineComponent, inject } from 'vue'
|
|
import { ROOT_TREE_INJECTION_KEY, treeNodeContentProps } from './virtual-tree'
|
|
|
|
export default defineComponent({
|
|
name: 'ElTreeNodeContent',
|
|
props: treeNodeContentProps,
|
|
setup(props) {
|
|
const tree = inject(ROOT_TREE_INJECTION_KEY)
|
|
return () => {
|
|
const node = props.node
|
|
const { data } = node!
|
|
return tree?.ctx.slots.default
|
|
? tree.ctx.slots.default({ node, data })
|
|
: h('span', { class: 'el-tree-node__label' }, [node?.label])
|
|
}
|
|
},
|
|
})
|