fix: (system): 修复VbenTree加载顺序问题
- 调整了数据权限分配和菜单分配表单中的加载顺序 - 确保在设置表单值之前完成树形结构数据的加载pull/177/head
parent
b031b6ac0f
commit
7031dbebe6
|
@ -74,11 +74,11 @@ const [Modal, modalApi] = useVbenModal({
|
||||||
}
|
}
|
||||||
modalApi.lock();
|
modalApi.lock();
|
||||||
try {
|
try {
|
||||||
await formApi.setValues(await getRole(data.id as number));
|
|
||||||
|
|
||||||
// 加载部门列表
|
// 加载部门列表
|
||||||
await loadDeptTree();
|
await loadDeptTree();
|
||||||
toggleExpandAll();
|
toggleExpandAll();
|
||||||
|
// 设置表单值, 一定要在加载树之后
|
||||||
|
await formApi.setValues(await getRole(data.id as number));
|
||||||
} finally {
|
} finally {
|
||||||
modalApi.unlock();
|
modalApi.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
@ -72,13 +72,13 @@ const [Modal, modalApi] = useVbenModal({
|
||||||
}
|
}
|
||||||
modalApi.lock();
|
modalApi.lock();
|
||||||
try {
|
try {
|
||||||
await formApi.setValues(data);
|
|
||||||
|
|
||||||
// 加载角色菜单
|
// 加载角色菜单
|
||||||
const menuIds = await getRoleMenuList(data.id as number);
|
const menuIds = await getRoleMenuList(data.id as number);
|
||||||
await formApi.setFieldValue('menuIds', menuIds);
|
await formApi.setFieldValue('menuIds', menuIds);
|
||||||
// 加载菜单列表
|
// 加载菜单列表
|
||||||
await loadMenuTree();
|
await loadMenuTree();
|
||||||
|
|
||||||
|
await formApi.setValues(data);
|
||||||
} finally {
|
} finally {
|
||||||
modalApi.unlock();
|
modalApi.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
@ -74,11 +74,11 @@ const [Modal, modalApi] = useVbenModal({
|
||||||
}
|
}
|
||||||
modalApi.lock();
|
modalApi.lock();
|
||||||
try {
|
try {
|
||||||
await formApi.setValues(await getRole(data.id as number));
|
|
||||||
|
|
||||||
// 加载部门列表
|
// 加载部门列表
|
||||||
await loadDeptTree();
|
await loadDeptTree();
|
||||||
toggleExpandAll();
|
toggleExpandAll();
|
||||||
|
// 设置表单值, 一定要在加载树之后
|
||||||
|
await formApi.setValues(await getRole(data.id as number));
|
||||||
} finally {
|
} finally {
|
||||||
modalApi.unlock();
|
modalApi.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,13 +69,13 @@ const [Modal, modalApi] = useVbenModal({
|
||||||
}
|
}
|
||||||
modalApi.lock();
|
modalApi.lock();
|
||||||
try {
|
try {
|
||||||
await formApi.setValues(data);
|
|
||||||
|
|
||||||
// 加载角色菜单
|
// 加载角色菜单
|
||||||
const menuIds = await getRoleMenuList(data.id as number);
|
const menuIds = await getRoleMenuList(data.id as number);
|
||||||
await formApi.setFieldValue('menuIds', menuIds);
|
await formApi.setFieldValue('menuIds', menuIds);
|
||||||
// 加载菜单列表
|
// 加载菜单列表
|
||||||
await loadMenuTree();
|
await loadMenuTree();
|
||||||
|
|
||||||
|
await formApi.setValues(data);
|
||||||
} finally {
|
} finally {
|
||||||
modalApi.unlock();
|
modalApi.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,11 +75,11 @@ const [Modal, modalApi] = useVbenModal({
|
||||||
}
|
}
|
||||||
modalApi.lock();
|
modalApi.lock();
|
||||||
try {
|
try {
|
||||||
await formApi.setValues(await getRole(data.id as number));
|
|
||||||
|
|
||||||
// 加载部门列表
|
// 加载部门列表
|
||||||
await loadDeptTree();
|
await loadDeptTree();
|
||||||
toggleExpandAll();
|
toggleExpandAll();
|
||||||
|
// 设置表单值, 一定要在加载树之后
|
||||||
|
await formApi.setValues(await getRole(data.id as number));
|
||||||
} finally {
|
} finally {
|
||||||
modalApi.unlock();
|
modalApi.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,13 +69,13 @@ const [Modal, modalApi] = useVbenModal({
|
||||||
}
|
}
|
||||||
modalApi.lock();
|
modalApi.lock();
|
||||||
try {
|
try {
|
||||||
await formApi.setValues(data);
|
|
||||||
|
|
||||||
// 加载角色菜单
|
// 加载角色菜单
|
||||||
const menuIds = await getRoleMenuList(data.id as number);
|
const menuIds = await getRoleMenuList(data.id as number);
|
||||||
await formApi.setFieldValue('menuIds', menuIds);
|
await formApi.setFieldValue('menuIds', menuIds);
|
||||||
// 加载菜单列表
|
// 加载菜单列表
|
||||||
await loadMenuTree();
|
await loadMenuTree();
|
||||||
|
|
||||||
|
await formApi.setValues(data);
|
||||||
} finally {
|
} finally {
|
||||||
modalApi.unlock();
|
modalApi.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,10 +47,13 @@ const [Drawer, drawerApi] = useVbenDrawer({
|
||||||
drawerApi.unlock();
|
drawerApi.unlock();
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
onOpenChange(isOpen) {
|
async onOpenChange(isOpen) {
|
||||||
if (isOpen) {
|
if (isOpen) {
|
||||||
const data = drawerApi.getData<SystemRoleApi.SystemRole>();
|
const data = drawerApi.getData<SystemRoleApi.SystemRole>();
|
||||||
formApi.resetForm();
|
formApi.resetForm();
|
||||||
|
if (permissions.value.length === 0) {
|
||||||
|
await loadPermissions();
|
||||||
|
}
|
||||||
if (data) {
|
if (data) {
|
||||||
formData.value = data;
|
formData.value = data;
|
||||||
id.value = data.id;
|
id.value = data.id;
|
||||||
|
@ -58,10 +61,6 @@ const [Drawer, drawerApi] = useVbenDrawer({
|
||||||
} else {
|
} else {
|
||||||
id.value = undefined;
|
id.value = undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (permissions.value.length === 0) {
|
|
||||||
loadPermissions();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue