diff --git a/src/components/node/index.ts b/src/components/node/index.ts index f51d58db81fe010d119950c2e18e97772c156011..a4cf79ffc9b68818396f9527c974ef71dfc1074f 100644 --- a/src/components/node/index.ts +++ b/src/components/node/index.ts @@ -195,8 +195,9 @@ export const renderChildren = (h:any, list:any, context:any, level:number) => { export const TreeOrgNode = (props: any, context: any) => { if (!props.data) return '' - props.data.root = !props.isClone - props.data.$$level = 0 + //这里修改值会导致不停渲染,然后就死循环. + // props.data.root = !props.isClone + // props.data.$$level = 0 return renderNode(h, props.data, context, true) } TreeOrgNode.directives = { diff --git a/src/components/tree-org/src/use-tree.ts b/src/components/tree-org/src/use-tree.ts index d41e40e6d24ce7d135618aee97119ac7bfb93ee4..6eb0f19327b90d13959788bd87332bbf00d5a9cf 100644 --- a/src/components/tree-org/src/use-tree.ts +++ b/src/components/tree-org/src/use-tree.ts @@ -245,7 +245,9 @@ export const useTree = ( }) const cloneData = reactive({data: {}}) const nodeargs = computed(() => { - const {cloneNodeDrag, onlyOneNode, data} = props + const {cloneNodeDrag, onlyOneNode, data} = props; + data.root = !(props as any).isClone + data.$$level = 0; return { drag: props.nodeDraggable, dragData: {keys, nodeMoving, parenNode, cloneNodeDrag, onlyOneNode, contextmenu, cloneData, data},