pull/17/head^2
parent
4da9e42eba
commit
114f1ad1be
1 changed files with 41 additions and 41 deletions
@ -1,79 +1,79 @@ |
||||
import router from "./router"; |
||||
import store from "./store"; |
||||
import NProgress from "nprogress"; // progress bar
|
||||
import "nprogress/nprogress.css"; // progress bar style
|
||||
import getPageTitle from "@/utils/get-page-title"; |
||||
import router from './router' |
||||
import store from './store' |
||||
import NProgress from 'nprogress' // progress bar
|
||||
import 'nprogress/nprogress.css' // progress bar style
|
||||
import getPageTitle from '@/utils/get-page-title' |
||||
|
||||
import Layout from "@/layout"; |
||||
import Layout from '@/layout' |
||||
|
||||
import serve from "api/login.js"; |
||||
import serve from 'api/login.js' |
||||
|
||||
NProgress.configure({ showSpinner: false }); // NProgress Configuration
|
||||
NProgress.configure({ showSpinner: false }) // NProgress Configuration
|
||||
|
||||
const whiteList = ["/login"]; // no redirect whitelist
|
||||
const whiteList = ['/login'] // no redirect whitelist
|
||||
|
||||
router.beforeEach(async (to, from, next) => { |
||||
NProgress.start(); |
||||
document.title = getPageTitle(to.meta.title); |
||||
const hasToken = localStorage.getItem("businessToken"); |
||||
NProgress.start() |
||||
document.title = getPageTitle(to.meta.title) |
||||
const hasToken = localStorage.getItem('businessToken') |
||||
if (hasToken) { |
||||
if (to.path === "/login") { |
||||
next({ path: "/" }); |
||||
NProgress.done(); |
||||
if (to.path === '/login') { |
||||
next({ path: '/' }) |
||||
NProgress.done() |
||||
} else { |
||||
const hasAuth = store.getters.auth && store.getters.auth.length; |
||||
const hasAuth = store.getters.auth && store.getters.auth.length |
||||
if (hasAuth) { |
||||
next(); |
||||
next() |
||||
} else { |
||||
try { |
||||
// let infoRes = await serve.getUserInfo();
|
||||
// infoRes.data.authList = [1];
|
||||
let infoRes = await serve.info(); |
||||
let infoRes = await serve.info() |
||||
// infoRes.data.authList = infoRes.authList;
|
||||
|
||||
store.dispatch("user/info", infoRes.data); |
||||
store.dispatch('user/info', infoRes.data) |
||||
|
||||
let routerRes = await serve.getCustomerRouters(); |
||||
let realRouter = filterAsyncRouter(routerRes.data); |
||||
store.dispatch("permission/generateRoutes", realRouter); |
||||
router.addRoutes(realRouter); |
||||
next({ ...to, replace: true }); |
||||
let routerRes = await serve.getCustomerRouters() |
||||
let realRouter = filterAsyncRouter(routerRes.data) |
||||
store.dispatch('permission/generateRoutes', realRouter) |
||||
router.addRoutes(realRouter) |
||||
next({ ...to, replace: true }) |
||||
} catch (err) { |
||||
console.log("catch"); |
||||
next("/login"); |
||||
NProgress.done(); |
||||
console.log('catch') |
||||
// next("/login");
|
||||
NProgress.done() |
||||
} |
||||
} |
||||
} |
||||
} else { |
||||
if (whiteList.includes(to.path)) { |
||||
next(); |
||||
next() |
||||
} else { |
||||
next("/login"); |
||||
NProgress.done(); |
||||
next('/login') |
||||
NProgress.done() |
||||
} |
||||
} |
||||
}); |
||||
}) |
||||
|
||||
router.afterEach(() => { |
||||
NProgress.done(); |
||||
}); |
||||
NProgress.done() |
||||
}) |
||||
|
||||
function filterAsyncRouter(routers) { |
||||
return routers.map((route) => { |
||||
return routers.map(route => { |
||||
if (route.component) { |
||||
if (route.component === "Layout") { |
||||
route.component = Layout; |
||||
if (route.component === 'Layout') { |
||||
route.component = Layout |
||||
} else { |
||||
route.component = lazyLoad(route.component); |
||||
route.component = lazyLoad(route.component) |
||||
} |
||||
} |
||||
if (route.children && route.children.length) { |
||||
route.children = filterAsyncRouter(route.children); |
||||
route.children = filterAsyncRouter(route.children) |
||||
} |
||||
return route; |
||||
}); |
||||
return route |
||||
}) |
||||
} |
||||
function lazyLoad(path) { |
||||
return (resolve) => require([`@/views/${path}`], resolve); |
||||
return resolve => require([`@/views/${path}`], resolve) |
||||
} |
||||
|
Loading…
Reference in new issue