修复开启TopNav后一级菜单路由参数设置无效问题
This commit is contained in:
parent
2885d7e31c
commit
ec29c057c4
@ -104,7 +104,7 @@ const setVisibleNumber = () => {
|
|||||||
visibleNumber.value = parseInt(String(width / 85));
|
visibleNumber.value = parseInt(String(width / 85));
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleSelect = (key: string, keyPath: string[]) => {
|
const handleSelect = (key: string) => {
|
||||||
currentIndex.value = key;
|
currentIndex.value = key;
|
||||||
const route = routers.value.find(item => item.path === key);
|
const route = routers.value.find(item => item.path === key);
|
||||||
if (isHttp(key)) {
|
if (isHttp(key)) {
|
||||||
@ -112,7 +112,13 @@ const handleSelect = (key: string, keyPath: string[]) => {
|
|||||||
window.open(key, "_blank");
|
window.open(key, "_blank");
|
||||||
} else if (!route || !route.children) {
|
} else if (!route || !route.children) {
|
||||||
// 没有子路由路径内部打开
|
// 没有子路由路径内部打开
|
||||||
router.push({ path: key, fullPath: '' });
|
const routeMenu = childrenMenus.value.find(item => item.path === key);
|
||||||
|
if (routeMenu && routeMenu.query) {
|
||||||
|
let query = JSON.parse(routeMenu.query);
|
||||||
|
router.push({ path: key, query: query });
|
||||||
|
} else {
|
||||||
|
router.push({ path: key });
|
||||||
|
}
|
||||||
appStore.toggleSideBarHide(true);
|
appStore.toggleSideBarHide(true);
|
||||||
} else {
|
} else {
|
||||||
// 显示左侧联动菜单
|
// 显示左侧联动菜单
|
||||||
|
1
src/types/router.d.ts
vendored
1
src/types/router.d.ts
vendored
@ -13,6 +13,7 @@ declare module 'vue-router' {
|
|||||||
title: string;
|
title: string;
|
||||||
icon: string;
|
icon: string;
|
||||||
};
|
};
|
||||||
|
query?: string;
|
||||||
} & RouteRecordRaw;
|
} & RouteRecordRaw;
|
||||||
|
|
||||||
interface _RouteLocationBase {
|
interface _RouteLocationBase {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user