index.js 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. import Vue from 'vue'
  2. import VueRouter from 'vue-router'
  3. import NProgress from 'nprogress'
  4. import Cookies from 'js-cookie'
  5. Vue.use(VueRouter)
  6. const router = new VueRouter({
  7. routes: [{
  8. path: '/login',
  9. name: 'Login',
  10. component: () => import('@/views/login'),
  11. meta: {title: '登录'}
  12. }, {
  13. path: '/logout',
  14. name: 'Logout',
  15. component: () => import('@/views/logout'),
  16. meta: {title: '退出登录'}
  17. }, {
  18. path: '/',
  19. redirect: '/data-market/main'
  20. }, {
  21. path: '/data-market/main',
  22. component: () => import('@/views/main'),
  23. children: [{
  24. path: '/data-market/main',
  25. name: 'DataMarketIndex',
  26. meta: {title: '数据大盘'}
  27. }]
  28. }, {
  29. path: '/system',
  30. component: () => import('@/views/main'),
  31. children: [{
  32. path: '/system/data-dict',
  33. name: 'dataDict',
  34. component: () => import('@/views/system/dataDict/list'),
  35. meta: {title: '系统管理 - 数据字典'}
  36. },
  37. {
  38. path: '/system/paper',
  39. name: 'paper',
  40. component: () => import('@/views/system/paper/list'),
  41. meta: {title: '系统管理 - 试卷管理'}
  42. },
  43. {
  44. path: '/system/level',
  45. name: 'level',
  46. component: () => import('@/views/system/level/list'),
  47. meta: {title: '系统管理 - 关卡管理'}
  48. },
  49. {
  50. path: '/system/level/detail',
  51. name: 'levelDetail',
  52. component: () => import('@/views/system/level/detail'),
  53. meta: {title: '我就瞎打'}
  54. }]
  55. }]
  56. })
  57. let URL_WHITE_TOKEN_LIST = [
  58. '/login'
  59. ]
  60. router.beforeEach((to, from, next) => {
  61. NProgress.start() // 每次切换页面时,调用进度条
  62. next()
  63. // let token = Cookies.get('token')
  64. // if (token) {
  65. // if (to.matched.length === 0) { // 匹配前往的路由不存在
  66. // from.name ? next({name: from.name}) : next('/error') // 判断此跳转路由的来源路由是否存在,存在的情况跳转到来源路由,否则跳转到404页面
  67. // } else {
  68. // next()
  69. // }
  70. // } else {
  71. // if (URL_WHITE_TOKEN_LIST.indexOf(to.path) !== -1) {
  72. // next()
  73. // } else {
  74. // next(`/login?redirect=${to.path}`)
  75. // }
  76. // }
  77. })
  78. router.afterEach(() => {
  79. NProgress.done() // 在即将进入新的页面组件前,关闭掉进度条
  80. })
  81. export default router