diff --git a/packages/devui-vue/devui/tree/src/const.ts b/packages/devui-vue/devui/tree/src/const.ts index 03ce915704..f1d856b4bd 100644 --- a/packages/devui-vue/devui/tree/src/const.ts +++ b/packages/devui-vue/devui/tree/src/const.ts @@ -1,3 +1,3 @@ export const USE_TREE_TOKEN = 'use-tree-token'; -export const NODE_HEIGHT = 40; +export const NODE_HEIGHT = 30; export const NODE_INDENT = 24; diff --git a/packages/devui-vue/devui/tree/src/new-tree.tsx b/packages/devui-vue/devui/tree/src/new-tree.tsx index aed82a358b..9022cbfb3d 100644 --- a/packages/devui-vue/devui/tree/src/new-tree.tsx +++ b/packages/devui-vue/devui/tree/src/new-tree.tsx @@ -1,4 +1,4 @@ -import { defineComponent, PropType, provide, toRefs, watch } from 'vue'; +import { defineComponent, PropType, provide, renderSlot, toRefs, useSlots, watch } from 'vue'; import type { ITreeNode } from './core/use-tree-types'; import DTreeNode from './components/tree-node'; import useTree from './core/use-tree'; @@ -15,7 +15,7 @@ export default defineComponent({ default: [] } }, - setup(props) { + setup(props, { slots }) { const { data } = toRefs(props); const treeFactory = useTree( @@ -37,7 +37,13 @@ export default defineComponent({ return (
{ - getExpendedTree().value.map(treeNode => ) + getExpendedTree().value.map(treeNode => ( + slots.default + ? renderSlot(useSlots(), 'default', { + treeFactory: treeFactory, nodeData: treeNode + }) + : + )) }
); diff --git a/packages/devui-vue/devui/tree/src/tree.scss b/packages/devui-vue/devui/tree/src/tree.scss index 051ee46435..6e3c354ca9 100644 --- a/packages/devui-vue/devui/tree/src/tree.scss +++ b/packages/devui-vue/devui/tree/src/tree.scss @@ -68,6 +68,7 @@ $keyframe-blue: #5e7ce0; display: inline-flex; align-items: center; width: 100%; + height: 30px; .devui-tree-node_loading { margin-left: 50px;