Files
element-plus/packages/components/tree-v2/src/tree-node-content.ts
msidolphin 2d2878eb53 feat(components): add virtual tree (#3398)
* 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>
2021-09-27 11:12:50 +08:00

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])
}
},
})