fix: 🐛 修复移除所有路由导致注销后重新登陆页面卡死

This commit is contained in:
Ray.Hao
2025-02-08 11:18:20 +08:00
parent 7b8298a8c5
commit dc85bb0afe

View File

@@ -51,15 +51,16 @@ export const usePermissionStore = defineStore("permission", () => {
* 重置路由 * 重置路由
*/ */
const resetRouter = () => { const resetRouter = () => {
// 清空本地存储的路由和菜单数据 // 从 router 实例中移除动态路由
routes.value = []; routes.value.forEach((route) => {
mixedLayoutLeftRoutes.value = []; if (route.name && !constantRoutes.find((r) => r.name === route.name)) {
// 从 Vue Router 中移除所有动态注册的路由
router.getRoutes().forEach((route) => {
if (route.name) {
router.removeRoute(route.name); router.removeRoute(route.name);
} }
}); });
// 清空本地存储的路由和菜单数据
routes.value = [];
mixedLayoutLeftRoutes.value = [];
isRoutesLoaded.value = false; isRoutesLoaded.value = false;
}; };