index.js 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. import Vue from 'vue'
  2. import VueRouter from 'vue-router'
  3. Vue.use(VueRouter)
  4. const routes = [
  5. {
  6. path: '*',
  7. redirect: '/404'
  8. },
  9. {
  10. path: '/404',
  11. name: '404',
  12. component: () => import(/* webpackChunkName: "pageNotFound" */ '../page/404')
  13. },
  14. {
  15. path: '/loan', // 我的申请记录
  16. name: 'Loan',
  17. component: () => import(/* webpackChunkName: "loan_home" */ '../views/loan/home'),
  18. meta: {
  19. isUseCache: false,
  20. keepAlive: true
  21. }
  22. },
  23. {
  24. path: '/loan/detail', // 进度查询:贷款详情页
  25. name: 'Detail',
  26. component: () => import(/* webpackChunkName: "loan_detail" */ '../views/loan/detail')
  27. },
  28. {
  29. path: '/loan/explain', // 贷款介绍
  30. name: 'Explain',
  31. component: () => import(/* webpackChunkName: "loan_goods" */ '../views/loan/explain')
  32. },
  33. {
  34. path: '/loan/apply', // 基本信息填写
  35. name: 'Apply',
  36. component: () => import(/* webpackChunkName: "loan_apply" */ '../views/loan/apply')
  37. },
  38. {
  39. path: '/loan/attest', // 上传资料
  40. name: 'Attest',
  41. component: () => import(/* webpackChunkName: "loan_attest" */ '../views/loan/attest')
  42. },
  43. {
  44. path: '/loan/bespeak', // 预约现场办理时间
  45. name: 'Bespeak',
  46. component: () => import(/* webpackChunkName: "loan_bespeak" */ '../views/loan/bespeak')
  47. },
  48. {
  49. path: '/loan/privacy', // 隐私协议
  50. name: 'Privacy',
  51. component: () => import(/* webpackChunkName: "loan_privacy" */ '../views/loan/privacy')
  52. },
  53. {
  54. path: '/loan/agreement', // 协议
  55. name: 'Agreement',
  56. component: () => import(/* webpackChunkName: "loan_agreement" */ '../views/loan/agreement')
  57. },
  58. {
  59. path: '/loan/help', // 还款助手
  60. name: 'Help',
  61. component: () => import(/* webpackChunkName: "loan_help" */ '../views/loan/help')
  62. },
  63. {
  64. path: '/loan/about', // 了解我们
  65. name: 'About',
  66. component: () => import(/* webpackChunkName: "loan_about" */ '../views/loan/about')
  67. },
  68. {
  69. path: '/partner', // 我的销售
  70. name: 'Partner',
  71. component: () => import(/* webpackChunkName: "partner_home" */ '../views/partner/home'),
  72. children: [
  73. {
  74. path: '/', // 推广
  75. name: 'Marketing',
  76. component: () => import(/* webpackChunkName: "partner_marketing" */ '../views/partner/marketing')
  77. },
  78. {
  79. path: '/mine', // 我的
  80. name: 'Mine',
  81. component: () => import(/* webpackChunkName: "partner_mine" */ '../views/partner/mine')
  82. }
  83. ]
  84. },
  85. {
  86. path: '/partner/goods', // 贷款产品
  87. name: 'Goods',
  88. component: () => import(/* webpackChunkName: "partner_goods" */ '../views/partner/goods')
  89. },
  90. {
  91. path: '/partner/sale', // 放款总额
  92. name: 'Sale',
  93. component: () => import(/* webpackChunkName: "partner_sale" */ '../views/partner/sale')
  94. },
  95. {
  96. path: '/partner/wallet', // 我的钱包
  97. name: 'Wallet',
  98. component: () => import(/* webpackChunkName: "partner_wallet" */ '../views/partner/wallet')
  99. },
  100. {
  101. path: '/partner/business', // 我的合伙人
  102. name: 'Business',
  103. component: () => import(/* webpackChunkName: "partner_business" */ '../views/partner/business')
  104. },
  105. {
  106. path: '/partner/login', // 登录
  107. name: 'Login',
  108. component: () => import(/* webpackChunkName: "partner_login" */ '../views/partner/login')
  109. },
  110. {
  111. path: '/partner/explain', // 成为合伙人-介绍
  112. name: 'Explain',
  113. component: () => import(/* webpackChunkName: "partner_explain" */ '../views/partner/explain')
  114. },
  115. {
  116. path: '/partner/join', // 成为合伙人-申请资料填写
  117. name: 'Join',
  118. component: () => import(/* webpackChunkName: "partner_join" */ '../views/partner/join')
  119. },
  120. {
  121. path: '/partner/detail', // 申请进度
  122. name: 'Detail',
  123. component: () => import(/* webpackChunkName: "partner_detail" */ '../views/partner/detail')
  124. },
  125. {
  126. path: '/partner/compact', // 签约
  127. name: 'Compact',
  128. component: () => import(/* webpackChunkName: "partner_compact" */ '../views/partner/compact')
  129. },
  130. {
  131. path: '/partner/privacy', // 隐私协议
  132. name: 'Privacy',
  133. component: () => import(/* webpackChunkName: "partner_privacy" */ '../views/partner/privacy')
  134. },
  135. {
  136. path: '/partner/agreement', // 协议
  137. name: 'Agreement',
  138. component: () => import(/* webpackChunkName: "partner_agreement" */ '../views/partner/agreement')
  139. }
  140. ]
  141. const router = new VueRouter({
  142. mode: 'history',
  143. routes,
  144. scrollBehavior (to, from, savedPosition) {
  145. // keep-alive 返回缓存页面后记录浏览位置
  146. if (savedPosition && to.meta.keepAlive) {
  147. return savedPosition
  148. }
  149. // 异步滚动操作
  150. return new Promise((resolve) => {
  151. setTimeout(() => {
  152. resolve({ x: 0, y: 1 })
  153. }, 0)
  154. })
  155. }
  156. })
  157. export default router