index.js 869 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import Vue from 'vue';
  2. import VueRouter from 'vue-router';
  3. import Layout from '@/layouts';
  4. import Login from '@/views/login';
  5. Vue.use(VueRouter);
  6. const routes = [
  7. {
  8. path: '/login',
  9. component: Login
  10. },
  11. {
  12. path: '/404',
  13. component: () => import('@/views/404')
  14. },
  15. {
  16. path: '/',
  17. component: Layout,
  18. redirect: '/taskkanban',
  19. children: [
  20. {
  21. path: '/taskkanban',
  22. name: 'TaskKanban',
  23. component: () => import('@/views/teacher/TaskKanban')
  24. }
  25. ]
  26. },
  27. {
  28. path: '*',
  29. redirect: '/404'
  30. }
  31. ];
  32. const createRouter = () =>
  33. new VueRouter({
  34. mode: 'history',
  35. scrollBehavior: () => ({ y: 0 }),
  36. routes
  37. });
  38. const router = createRouter();
  39. // 重置路由
  40. export function resetRouter() {
  41. const newRouter = createRouter();
  42. router.matcher = newRouter.matcher;
  43. }
  44. export default router;