router.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. import Vue from 'vue'
  2. import Router from 'vue-router'
  3. Vue.use(Router)
  4. export default new Router({
  5. mode: 'history',
  6. base: process.env.BASE_URL,
  7. routes: [
  8. {
  9. path: '/',
  10. name: 'Home',
  11. component: () => import(/* webpackChunkName: "home" */ '_v/Home'),
  12. meta: {
  13. title: '奇文网盘' ,
  14. content: {
  15. description: '基于Spring Boot + Vue CLI@3 框架开发的Web文件系统,旨在为用户提供一个简单、方便的文件存储方案'
  16. },
  17. }
  18. },
  19. {
  20. path: '/login',
  21. name: 'Login',
  22. component: () => import(/* webpackChunkName: "login" */ '_v/Login.vue'),
  23. meta: { title: '登录 - 奇文网盘' }
  24. },
  25. {
  26. path: '/register',
  27. name: 'Register',
  28. component: () => import(/* webpackChunkName: "register" */ '_v/Register.vue'),
  29. meta: { title: '注册 - 奇文网盘' }
  30. },
  31. {
  32. path: '/file',
  33. name: 'File',
  34. component: () => import(/* webpackChunkName: "file" */ '_v/file/File.vue'),
  35. meta: {
  36. requireAuth: true, // 当前路由是否需要登录才可进入
  37. title: '奇文网盘',
  38. content: {
  39. description: '基于Spring Boot + Vue CLI@3 框架开发的Web文件系统,旨在为用户提供一个简单、方便的文件存储方案'
  40. },
  41. breadCrumbName: '全部文件'
  42. }
  43. },
  44. {
  45. path: '/onlyoffice',
  46. name: 'Onlyoffice',
  47. meta: {
  48. title: '在线编辑预览 - 奇文网盘',
  49. content: {
  50. description: '在线编辑预览'
  51. }
  52. },
  53. component: () => import(/* webpackChunkName: "onlyOffice" */ '_v/OnlyOffice/index.vue')
  54. },
  55. {
  56. path: '/share/:shareBatchNum',
  57. name: 'Share',
  58. component: () => import(/* webpackChunkName: "share" */ '_v/Share/index.vue'),
  59. meta: {
  60. title: '分享 - 奇文网盘',
  61. breadCrumbName: '分享文件'
  62. },
  63. props: true
  64. },
  65. {
  66. path: '/myshare',
  67. name: 'MyShare',
  68. component: () => import(/* webpackChunkName: "my_share" */ '_v/MyShare/index.vue'),
  69. meta: {
  70. requireAuth: true,
  71. title: '我的分享 - 奇文网盘',
  72. breadCrumbName: '我的分享'
  73. }
  74. },
  75. {
  76. path: '*',
  77. name: 'Error_404',
  78. component: () => import(/* webpackChunkName: "error_404" */ '_v/ErrorPage/404.vue'),
  79. meta: { title: '404 - 奇文网盘' }
  80. }
  81. ]
  82. })
  83. const originalPush = Router.prototype.push
  84. Router.prototype.push = function push(location) {
  85. return originalPush.call(this, location).catch((err) => err)
  86. }