diff --git a/src/views/admin/system/menu/index.vue b/src/views/admin/system/menu/index.vue index fab17be..ae8f29c 100644 --- a/src/views/admin/system/menu/index.vue +++ b/src/views/admin/system/menu/index.vue @@ -1,7 +1,7 @@ @@ -107,7 +110,7 @@ const state: BasicTableProps = reactive({ createdIsNeed: false, pageList: pageList, queryForm: { - // parentId: -1, + parentId: "-1", menuName: "", }, isPage: false, @@ -122,7 +125,7 @@ onMounted(async () => { const expandRowKeys = computed(() => { const list = state.dataList const arr: any[] = [] - list?.forEach((item) => { + list?.map((item) => { if (item.children && item.children.length) { arr.push(item.id) } @@ -130,21 +133,6 @@ const expandRowKeys = computed(() => { return arr }) -// 根据类型判断是否有子节点 -// const setHasChildren = (arr: any[]) => { -// arr.forEach((item) => { -// // 添加 hasChildren 属性 -// item.hasChildren = item.menuType !== "1" -// }) -// } -// const tableList = computed(() => { -// const list = state.dataList -// // if (Array.isArray(list)) { -// // setHasChildren(list) -// // } -// return list -// }) - // 打开新增菜单弹窗 const onOpenAddMenu = (type?: string, row?: any) => { menuDialogRef.value.openDialog(type, row) @@ -159,35 +147,54 @@ const deleteMenuDisabled = (row: any) => { return (row.children || []).length > 0 } -// 搜索事件 -const query = () => { - state.dataList = [] - state.queryForm.parentId = undefined - getDataList() -} - // 清空搜索条件 const resetQuery = () => { queryRef.value.resetFields() + state.queryForm.parentId = "-1" state.dataList = [] getDataList() } -// const load = (row: any, treeNode: unknown, resolve: (date: any[]) => void) => { -// const param = { -// parentId: row.id, -// } -// pageList(param).then((res) => { -// const childrenList = res.data -// if (Array.isArray(childrenList)) { -// setHasChildren(childrenList) -// } -// if (childrenList && childrenList.length) { -// resolve(childrenList) -// } -// }) -// } +const load = (row: any, treeNode: unknown, resolve: (date: any[]) => void) => { + const param = { + parentId: row.id, + } + pageList(param).then((res) => { + const childrenList = res.data + if (Array.isArray(childrenList)) { + setHasChildren(childrenList) + } + if (childrenList && childrenList.length) { + resolve(childrenList) + } + }) +} +// 根据类型判断是否有子节点 +const setHasChildren = (arr: any[]) => { + arr.forEach((item) => { + // 添加 hasChildren 属性 + item.hasChildren = item.menuType !== "1" + }) +} +const tableList = computed(() => { + const list = state.dataList + if (Array.isArray(list)) { + setHasChildren(list) + } + return list +}) + +const query = () => { + state.dataList = [] + if (state.queryForm.menuName) { + state.queryForm.parentId = "" + } else { + state.queryForm.parentId = "-1" + } + + getDataList() +} // 删除操作 const handleDelete = async (row: any) => { try {