@uivjs/admin-base-layout
Version:
48 lines (44 loc) • 1.3 kB
JavaScript
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
import { createRouter, createWebHistory, createWebHashHistory } from 'vue-router';
import { getToken } from './auth';
export var router = function router(routes, options) {
if (routes === void 0) {
routes = [];
}
if (options === void 0) {
options = {};
}
var {
whiteList = ['/login', '/auth-redirect'],
hashRoute = true
} = options;
var router = createRouter({
history: hashRoute ? createWebHashHistory(process.env.BASE_URL) : createWebHistory(process.env.BASE_URL),
routes
});
router.beforeEach( /*#__PURE__*/function () {
var _ref = _asyncToGenerator(function* (to, from, next) {
// determine whether the user has logged in
var hasToken = getToken();
if (hasToken) {
next();
} else {
next();
/* has no token*/
// if (whiteList && whiteList.includes(to.path)) {
// console.log(to.path)
// next();
// } else {
// next(`/login?redirect=${to.path}`);
// }
}
});
return function (_x, _x2, _x3) {
return _ref.apply(this, arguments);
};
}());
router.afterEach(() => {// finish progress bar
});
return router;
};
//# sourceMappingURL=router.js.map