当前角色无菜单时 不可无限读取菜单
This commit is contained in:
@@ -41,11 +41,18 @@ export async function initBackEndControlRoutes() {
|
|||||||
await useUserInfo().setUserInfos();
|
await useUserInfo().setUserInfos();
|
||||||
// 获取路由菜单数据
|
// 获取路由菜单数据
|
||||||
const res = await getBackEndControlRoutes();
|
const res = await getBackEndControlRoutes();
|
||||||
// 无登录权限时,添加判断
|
const menuList = res.data || [];
|
||||||
|
// 无登录权限时仍走后续流程,用 dynamicRoutes 作为子路由并写入 store,避免 routesList 一直为空导致 beforeEach 无限请求
|
||||||
// https://gitee.com/lyt-top/vue-next-admin/issues/I64HVO
|
// https://gitee.com/lyt-top/vue-next-admin/issues/I64HVO
|
||||||
if ((res.data || []).length <= 0) return Promise.resolve(true);
|
if (menuList.length <= 0) {
|
||||||
|
useRequestOldRoutes().setRequestOldRoutes([]);
|
||||||
|
baseRoutes[0].children = [...dynamicRoutes, ...(await backEndComponent([]) || [])];
|
||||||
|
await setAddRoute();
|
||||||
|
await setFilterMenuAndCacheTagsViewRoutes();
|
||||||
|
return Promise.resolve(true);
|
||||||
|
}
|
||||||
// 存储接口原始路由(未处理component),根据需求选择使用
|
// 存储接口原始路由(未处理component),根据需求选择使用
|
||||||
useRequestOldRoutes().setRequestOldRoutes(JSON.parse(JSON.stringify(res.data)));
|
useRequestOldRoutes().setRequestOldRoutes(JSON.parse(JSON.stringify(menuList)));
|
||||||
// 处理路由(component),替换 baseRoutes(/@/router/route)第一个顶级 children 的路由
|
// 处理路由(component),替换 baseRoutes(/@/router/route)第一个顶级 children 的路由
|
||||||
baseRoutes[0].children = [...dynamicRoutes, ...(await backEndComponent(res.data))];
|
baseRoutes[0].children = [...dynamicRoutes, ...(await backEndComponent(res.data))];
|
||||||
// 添加动态路由
|
// 添加动态路由
|
||||||
|
|||||||
Reference in New Issue
Block a user