From b406abc6145807bfe092501361817614dc40901b Mon Sep 17 00:00:00 2001 From: Kagol Date: Tue, 19 Apr 2022 10:58:29 +0800 Subject: [PATCH] =?UTF-8?q?fix(tree):=20=E4=BF=AE=E5=A4=8Dtree=E7=BB=84?= =?UTF-8?q?=E4=BB=B6=E8=BF=9E=E6=8E=A5=E7=BA=BF=E9=94=99=E8=AF=AF=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/devui-vue/devui/tree/src/core/use-core.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/devui-vue/devui/tree/src/core/use-core.ts b/packages/devui-vue/devui/tree/src/core/use-core.ts index 4dfd22119c..22942b008a 100644 --- a/packages/devui-vue/devui/tree/src/core/use-core.ts +++ b/packages/devui-vue/devui/tree/src/core/use-core.ts @@ -2,17 +2,20 @@ import { computed, ComputedRef, Ref } from 'vue'; import { IInnerTreeNode, ITreeNode, IUseCore, valueof } from './use-tree-types'; import { generateInnerTree } from './utils'; +const DEFAULT_CONFIG = { + expanded: false, // 是否只从展开了的节点中获取数据 + recursive: true, // 是否需要获取非直接子节点 +} + export default function(options?){ return function useCore(data: Ref): IUseCore { const getLevel = (node: IInnerTreeNode): number => { return data.value.find((item) => item.id === node.id).level; } - - const getChildren = (node: IInnerTreeNode, config = { - expanded: false, - recursive: true, - }): IInnerTreeNode[] => { + + const getChildren = (node: IInnerTreeNode, userConfig = DEFAULT_CONFIG): IInnerTreeNode[] => { let result = []; + const config = { ...DEFAULT_CONFIG, ...userConfig }; const treeData = config.expanded ? getExpendedTree() : data; const startIndex = treeData.value.findIndex((item) => item.id === node.id);