修正刷新页面路由丢失情况

This commit is contained in:
zxx 2023-08-07 13:53:52 +08:00
parent 4001b1a225
commit addf7adad0
7 changed files with 78 additions and 9 deletions

View File

@ -129,7 +129,7 @@ export default {
}
return;
}
console.log(result.data)
// console.log(result.data)
resolve(result.data); // 返回成功
if (callback) { // 如果有回调

1
src/bootstrap.js vendored
View File

@ -18,6 +18,7 @@ function bootstrap({router, store, i18n, message}) {
setAppOptions({router, store, i18n})
// 加载 axios 拦截器
loadInterceptors(interceptors, {router, store, i18n, message})
// console.log('bootstrap 加载路由')
// 加载路由
loadRoutes()
// 加载路由守卫

View File

@ -0,0 +1,15 @@
<template>
<div>
vue test
</div>
</template>
<script>
export default {
}
</script>
<style>
</style>

View File

@ -0,0 +1,36 @@
// 中台用户路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminUserRouterMap = {
AdminUser:{
name: '测试',
icon: 'idcard',
component: view.page,
meta: {
invisible:true, // 不在菜单中显示
},
authority: {
permission:['AdminUser-All'],
}
},
AdminUserList:{
name: '测试列表',
icon: 'idcard',
path: '/AdminUser/AdminUserList',
component: () => import('@/pages/Test/TestList'),
authority: {
permission:['TestList-All','TestList-List'],
}
},
}
export default AdminUserRouterMap

View File

@ -29,6 +29,7 @@ if (Authorization != null) {
})
getRoutesConfig().then(result => { // 获取路由配置
// console.log("=================result:"+result)
if (result.data.data != null) {
const routesConfig = result.data.data;
console.log(routesConfig)
@ -41,8 +42,11 @@ if (Authorization != null) {
{router:'TouchMesReporting'}
]
};
// console.log("=================touchRoute:"+[touchRoute,routesConfig])
loadRoutes([touchRoute,routesConfig]) // 加载路由
}else{
// console.log("=================touchRoute:"+[routesConfig])
loadRoutes([routesConfig]) // 加载路由
}
@ -106,7 +110,7 @@ Router.prototype.push = function push(location) { // 重写原型对象中的pus
function initRouter(isAsync) { // 初始化路由
const options = isAsync ? require('./async/config.async').default : require('./config').default // 引入路由配置
formatRoutes(options.routes) // 格式化路由
console.log(options)
// console.log(options)
return new Router(options) // 返回路由实例
}
export { loginIgnore, initRouter } // 导出路由配置和初始化路由方法

View File

@ -16,6 +16,10 @@ import Mes from '@/router/Middle/Mes/router.map.js'
import Chatgpt from '@/router/Middle/Chatgpt/router.map.js'
import ProvideLoanApply from '@/router/Middle/ProvideLoanApply/router.map.js'
import Test from '@/router/Test/router.map.js'
const routerMap = Object.assign({
},
@ -36,8 +40,11 @@ const routerMap = Object.assign({
//ChatGPT
Chatgpt,
//车贷
ProvideLoanApply
ProvideLoanApply,
//测试
Test
)

View File

@ -127,7 +127,7 @@ function mergeMenus(routesConfig) {
let appendedGroups = []; //已经处理的菜单项
let children = JSON.parse(JSON.stringify(root.children));
console.log(children)
// console.log(children)
root.children.forEach(item => {
if (appendedGroups.filter(a => a == item.router).length) {
@ -166,6 +166,8 @@ console.log(mergeMenus)
* @param routesConfig {RouteConfig[]} 路由配置
*/
function loadRoutes(routesConfig) { // 加载路由
// 应用配置
const { router, store, i18n } = appOptions
//兼容 0.6.1 以下版本
/*************** 兼容 version < v0.6.1 *****************/
@ -181,14 +183,18 @@ function loadRoutes(routesConfig) { // 加载路由
// }
/*************** 兼容 version < v0.6.1 *****************/
console.log(routesConfig)
// console.log("=================routesConfig:")
// console.log("=================routesConfig:"+routesConfig)
//routesConfig = mergeMenus(routesConfig);
if (!routesConfig) {
return;
var routesconfig = store.getters['account/routesConfig']
console.log("=================routesConfig:", routesconfig)
if (!routesconfig) {
return;
}else{
routesConfig = routesconfig
}
}
// 应用配置
const { router, store, i18n } = appOptions
const Permission = store.getters['account/permissions'] // 获取权限
if (routesConfig) { // 如果routesConfig已经存在