From 4ff33d87f50651e1701df6866b911618fc408347 Mon Sep 17 00:00:00 2001 From: xingyu Date: Sun, 23 Apr 2023 14:33:31 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=96=B0=E5=A2=9E=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E4=B8=BB=E7=9B=AE=E5=BD=95=20#I6Y1X2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Form/src/components/ApiTreeSelect.vue | 11 +++++++++-- src/views/system/menu/menu.data.ts | 1 + 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/components/Form/src/components/ApiTreeSelect.vue b/src/components/Form/src/components/ApiTreeSelect.vue index 71974e0..d029372 100644 --- a/src/components/Form/src/components/ApiTreeSelect.vue +++ b/src/components/Form/src/components/ApiTreeSelect.vue @@ -22,7 +22,8 @@ const props = defineProps({ params: { type: Object }, immediate: { type: Boolean, default: true }, resultField: propTypes.string.def(''), - handleTree: { type: String, default: '' } + handleTree: { type: String, default: '' }, + parent: { type: String, default: '' } }) const emit = defineEmits(['options-change', 'change']) const attrs = useAttrs() @@ -79,7 +80,13 @@ async function fetch() { if (props.handleTree) { result = handleTree(result, props.handleTree) } - treeData.value = (result as Recordable[]) || [] + if (props.parent) { + treeData.value = [{ id: 0, name: props.parent, children: [] }] + treeData.value[0].children = (result as Recordable[]) || [] + } else { + treeData.value = (result as Recordable[]) || [] + } + isFirstLoaded.value = true emit('options-change', treeData.value) } diff --git a/src/views/system/menu/menu.data.ts b/src/views/system/menu/menu.data.ts index 83d2487..3080de0 100644 --- a/src/views/system/menu/menu.data.ts +++ b/src/views/system/menu/menu.data.ts @@ -85,6 +85,7 @@ export const formSchema: FormSchema[] = [ component: 'ApiTreeSelect', componentProps: { api: () => listSimpleMenus(), + parent: '主类目', fieldNames: { label: 'name', key: 'id',