From f542d731de01e6897243b2072523ecdaa6c63505 Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期五, 01 三月 2024 08:50:02 +0800 Subject: [PATCH] 修改 --- src/permission.js | 29 ++++++++++++++++++++++++++++- 1 files changed, 28 insertions(+), 1 deletions(-) diff --git a/src/permission.js b/src/permission.js index 609d215..01ff805 100644 --- a/src/permission.js +++ b/src/permission.js @@ -27,7 +27,34 @@ store.dispatch('GenerateRoutes').then(accessRoutes => { // 根据roles权限生成可访问的路由表 router.addRoutes(accessRoutes) // 动态添加可访问路由表 - next({ ...to, replace: true }) // hack方法 确保addRoutes已完成 + // next({ ...to, replace: true }) // hack方法 确保addRoutes已完成 + let path = ''; + if (accessRoutes[0].path === '/') { + path = accessRoutes[0].path + accessRoutes[0].children[0].path; //获取第一路由路径 + } else { + path = accessRoutes[0].path + '/' + accessRoutes[0].children[0].path; //获取第一路由路径 + } + + if (accessRoutes[0].children[0].query !== undefined) { //如果当前路由存在路由参数,则带入 + let query = JSON.parse(accessRoutes[0].children[0].query); + let temp = ''; + for (var val in query) { + if (temp.length == 0) { + temp = "?"; + } else { + temp = temp + "&"; + } + temp = temp + val + "=" + query[val]; + } + path = path + temp; + } + var temp = {...to, replace: true}; + var curPath = temp.path; + if (from.path == '/login' || curPath == "/" ) { + next({path, replace: true}) // hack方法 确保addRoutes已完成 + } else { + next(temp) // hack方法 确保addRoutes已完成 + } }) }).catch(err => { store.dispatch('LogOut').then(() => { -- Gitblit v1.9.2