index.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import Vue from 'vue';
  2. import VueRouter from 'vue-router';
  3. const originalPush = VueRouter.prototype.push;
  4. VueRouter.prototype.push = function push(location) {
  5. return originalPush.call(this, location).catch((err) => err);
  6. };
  7. Vue.use(VueRouter);
  8. const routes = [
  9. {
  10. path: '/',
  11. redirect: '/login',
  12. },
  13. {
  14. path: '/exam',
  15. name: 'exam',
  16. meta: { title: '考试' },
  17. component: () => import(/* webpackChunkName: "exam" */ '../views/exam.vue'),
  18. },
  19. {
  20. path: '/login',
  21. name: 'login',
  22. meta: { title: '登陆' },
  23. component: () => import(/* webpackChunkName: "login" */ '../views/login.vue'),
  24. },
  25. {
  26. path: '/test',
  27. name: 'test',
  28. meta: { title: '测试' },
  29. component: () => import(/* webpackChunkName: "test" */ '../views/test.vue'),
  30. },
  31. ];
  32. const router = new VueRouter({
  33. mode: 'hash',
  34. // base: process.env.VUE_APP_ROUTER,
  35. routes,
  36. });
  37. router.beforeEach((to, from, next) => {
  38. document.title = `${to.meta.title} `;
  39. const noCheck = _.get(to, 'meta.noCheck', false);
  40. if (noCheck) next();
  41. else {
  42. const token = localStorage.getItem('token');
  43. // if (!token) next('/login');
  44. // else next();
  45. next();
  46. }
  47. });
  48. export default router;