问题:
退出后,再次登陆,发现菜单异常 (控制台有输出说路由重复)
解决方案:
在router/index.js
文件中,发现一个重置路由方法 ,就是将路由重新实例化,相当于换了一个新的路由,之前加的路由
就不存在了,需要在退出登录时, 调用一下即可
在 router/index.js中
// 重置路由
export function resetRouter() {
const newRouter = createRouter()
router.matcher = newRouter.matcher // 重新设置路由的可匹配路径
}
在store/modules/user.js中
需要先导入 import { resetRouter } from '@/router'
// 退出的action操作
logout(context) {
// 1. 移除vuex个人信息
context.commit('removeUserInfo')
// 2. 移除token信息
context.commit('removeToken')
// 3. 重置路由
resetRouter()
}