index.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. import Vue from 'vue'
  2. import VueRouter from 'vue-router'
  3. const Home = () => import('@/views/Home.vue')
  4. const register = ()=>import('@/views/register.vue')
  5. const login = ()=>import('@/views/Login.vue')
  6. const userinfo = ()=>import('@/views/userinfo.vue')
  7. const edit = ()=>import('@/views/Edit.vue')
  8. const article = ()=>import('@/views/Article.vue')
  9. const editcategory = ()=>import('@/views/EditCategory.vue')
  10. const workbench = ()=>import('@/views/workbench.vue')
  11. const cwAttendanceDec = ()=>import('@/views/cwAttendanceDec.vue')
  12. const user = ()=>import('@/views/user.vue')
  13. const leave = ()=>import('@/views/leave.vue')
  14. const approval = ()=>import('@/views/approval.vue')
  15. Vue.use(VueRouter)
  16. const routes = [
  17. {
  18. path:'/',
  19. component:Home,
  20. meta:{
  21. keepalive:true
  22. }
  23. },
  24. {
  25. path:'/register',
  26. component:register
  27. },
  28. {
  29. path:'/login',
  30. component:login
  31. },
  32. {
  33. path:'/userinfo',
  34. component:userinfo,
  35. meta:{
  36. istoken:true
  37. }
  38. },
  39. {
  40. path:'/user',
  41. component:user
  42. },
  43. {
  44. path:'/edit',
  45. component:edit,
  46. meta:{
  47. istoken:true
  48. }
  49. },
  50. {
  51. path:'/article/:id',
  52. component:article
  53. },
  54. {
  55. path:'/editcategory',
  56. component:editcategory
  57. },
  58. {
  59. path:'/workbench',
  60. component:workbench
  61. },
  62. {
  63. path:'/cwAttendanceDec',
  64. component:cwAttendanceDec
  65. },{
  66. path:'/leave',
  67. component:leave
  68. },
  69. {
  70. path:'/approval',
  71. component:approval
  72. }
  73. ]
  74. const router = new VueRouter({
  75. routes,
  76. mode:'history'
  77. })
  78. router.beforeEach((to,from,next) => {
  79. if((!localStorage.getItem('token') || !localStorage.getItem('id'))&&to.meta.istoken == true){
  80. router.push('/login')
  81. Vue.prototype.$msg.fail('请重新登录')
  82. return
  83. }
  84. next()
  85. })
  86. export default router