seoRouter.js 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. const extendRoutes = (routes, resolve) => {
  2. // remove auto generate routes
  3. const kaifainIndex = routes.findIndex((r) => r.name === 'kaifain')
  4. kaifainIndex && routes.splice(kaifainIndex, 1)
  5. routes.unshift(
  6. // jishuin
  7. ...[{
  8. name: 'jishuinCollectedCID1',
  9. path: '/jishuin/c/:id/:type',
  10. component: resolve(__dirname, '../pages/user/collect_article/_id/_type.vue')
  11. }, {
  12. name: 'jishuinCollectedC1',
  13. path: '/jishuin/c/:id',
  14. component: resolve(__dirname, '../pages/user/collect_article/_id/_type.vue')
  15. }, {
  16. name: 'jishuinUserUID1',
  17. path: '/jishuin/u/:id/:type',
  18. component: resolve(__dirname, '../pages/user/_id/_type.vue')
  19. }, {
  20. name: 'jishuinUserU1',
  21. path: '/jishuin/u/:id',
  22. component: resolve(__dirname, '../pages/user/_id/_type.vue')
  23. }],
  24. // job
  25. ...[{
  26. name: 'JobListSeoDetail_0',
  27. path: '/job/detail/:id?',
  28. component: resolve(__dirname, '../pages/job/detail/_id.vue')
  29. }, {
  30. name: 'JobListSeoDetail',
  31. path: '/job/d/:id?',
  32. component: resolve(__dirname, '../pages/job/detail/_id.vue')
  33. }, {
  34. name: 'CompanySeoList',
  35. path: '/job/company/list/:city?',
  36. component: resolve(__dirname, '../pages/job/company/list/_city.vue')
  37. }, {
  38. name: 'JobListSeoIndex',
  39. path: '/job/*',
  40. component: resolve(__dirname, '../pages/job/index.vue')
  41. }],
  42. // 服务商列表
  43. ...[{
  44. name: 'SeoCompanyList',
  45. path: '/company',
  46. component: resolve(__dirname, '../pages/company/list.vue')
  47. }, {
  48. name: 'SeoCompanyList_0',
  49. path: '/company/',
  50. component: resolve(__dirname, '../pages/company/list.vue')
  51. }, {
  52. name: 'SeoCompanyList_1',
  53. path: '/company/*',
  54. component: resolve(__dirname, '../pages/company/list.vue')
  55. }, {
  56. name: 'SeoCompanyDetail',
  57. path: '/companyDetail/:id?',
  58. component: resolve(__dirname, '../pages/company/detail/_id.vue')
  59. }],
  60. // 资源商城
  61. ...[{
  62. name: 'SeoWorkDownList_0',
  63. path: '/work_down/*',
  64. component: resolve(__dirname, '../pages/work_down/index.vue')
  65. }, {
  66. name: 'SeoWorkList_0',
  67. path: '/works',
  68. component: resolve(__dirname, '../pages/work_down/index.vue')
  69. }, {
  70. name: 'SeoWorkList_1',
  71. path: '/works/*',
  72. component: resolve(__dirname, '../pages/work_down/index.vue')
  73. }],
  74. // 服务:技能、咨询、客栈学院
  75. ...[{
  76. name: 'SeoSkillList_0',
  77. path: '/frontend/skill/list/*',
  78. component: resolve(__dirname, '../pages/frontend/skill/list.vue')
  79. }, {
  80. name: 'SeoConsultList_0',
  81. path: '/frontend/consult/list/*',
  82. component: resolve(__dirname, '../pages/frontend/consult/list.vue')
  83. }, {
  84. name: 'SeoLearnList_0',
  85. path: '/frontend/learn/list/*',
  86. component: resolve(__dirname, '../pages/frontend/learn/list.vue')
  87. }, {
  88. name: 'SeoLearnList',
  89. path: '/learn',
  90. component: resolve(__dirname, '../pages/frontend/learn/list.vue')
  91. }, {
  92. name: 'SeoLearnList_1',
  93. path: '/learn/*',
  94. component: resolve(__dirname, '../pages/frontend/learn/list.vue')
  95. }, {
  96. name: 'SeoLearnDetail',
  97. path: '/l/:id?',
  98. component: resolve(__dirname, '../pages/frontend/learn/detail/_id.vue')
  99. }, {
  100. name: 'SeoConsultList',
  101. path: '/consult',
  102. component: resolve(__dirname, '../pages/frontend/consult/list.vue')
  103. }, {
  104. name: 'SeoConsultList_1',
  105. path: '/consult/*',
  106. component: resolve(__dirname, '../pages/frontend/consult/list.vue')
  107. }, {
  108. name: 'SeoConsultUser',
  109. path: '/c/:id?',
  110. component: resolve(__dirname, '../pages/frontend/consult/user/_id.vue')
  111. }, {
  112. name: 'SeoSkillList',
  113. path: '/skill',
  114. component: resolve(__dirname, '../pages/frontend/skill/list.vue')
  115. }, {
  116. name: 'SeoSkillList_1',
  117. path: '/skill/*',
  118. component: resolve(__dirname, '../pages/frontend/skill/list.vue')
  119. }, {
  120. name: 'SeoSkillDetail',
  121. path: '/s/:id?',
  122. component: resolve(__dirname, '../pages/frontend/skill/detail/_id.vue')
  123. }, {
  124. name: 'SeoTypeServies',
  125. path: '/type/service',
  126. component: resolve(__dirname, '../pages/frontend/requirements/index.vue')
  127. }],
  128. // 技术等级认证
  129. // ...[
  130. // {
  131. // name: 'SkillCertProfile',
  132. // path: '/skill_cert/profile',
  133. // component: resolve(__dirname, '../pages/skill_cert/profile.vue')
  134. // }, {
  135. // name: 'SkillCertResume',
  136. // path: '/skill_cert/resume_improve',
  137. // component: resolve(__dirname, '../pages/skill_cert/resume_improve.vue')
  138. // }, {
  139. // name: 'SkillCertReadyInterview',
  140. // path: '/skill_cert/ready_interview',
  141. // component: resolve(__dirname, '../pages/skill_cert/ready_interview.vue')
  142. // }, {
  143. // name: 'SkillCertStartInterview',
  144. // path: '/skill_cert/start_interview',
  145. // component: resolve(__dirname, '../pages/skill_cert/start_interview.vue')
  146. // }, {
  147. // name: 'SkillCertForm',
  148. // path: '/skill_cert/cert_form',
  149. // component: resolve(__dirname, '../pages/skill_cert/cert_form.vue')
  150. // },
  151. // ]
  152. // 分享动态详情页
  153. ...[
  154. {
  155. name: 'DynamicDetail',
  156. path: '/frontend/dynamic/info/:id?',
  157. component: resolve(__dirname, '../pages/frontend/dynamic/info.vue')
  158. }
  159. ],
  160. // 身份
  161. ...[
  162. {
  163. name: 'AccountChange',
  164. path: '/frontend/accountchange',
  165. component: resolve(__dirname, '../pages/frontend/account/change.vue')
  166. },
  167. {
  168. name: 'NameCert',
  169. path: '/frontend/name_cert',
  170. component: resolve(__dirname, '../pages/frontend/name_cert/index.vue')
  171. },
  172. {
  173. name: 'NameCertSuccess',
  174. path: '/frontend/name_cert_success',
  175. component: resolve(__dirname, '../pages/frontend/name_cert/success.vue')
  176. },
  177. {
  178. name: 'NameCertFail',
  179. path: '/frontend/name_cert_fail',
  180. component: resolve(__dirname, '../pages/frontend/name_cert/fail.vue')
  181. },
  182. {
  183. name: "PersonalIndex",
  184. path: '/u/:uid',
  185. component: resolve(__dirname, '../pages/frontend/personal/index.vue')
  186. }
  187. ],
  188. // 发布需求
  189. ...[
  190. {
  191. name: 'requirements',
  192. path: "/frontend/requirements",
  193. component: resolve(__dirname, '../pages/frontend/requirements/index.vue')
  194. }
  195. ],
  196. // 开发者
  197. ...[
  198. {
  199. name: 'SeoDeveloperIndex',
  200. path: "/frontend/developer",
  201. component: resolve(__dirname, '../pages/frontend/developer/index.vue')
  202. },
  203. {
  204. name: 'SeoBituniIndex',
  205. path: "/bituni",
  206. component: resolve(__dirname, '../pages/frontend/bituni/index.vue')
  207. }
  208. ]
  209. );
  210. /**
  211. * 404
  212. */
  213. routes.push({
  214. name: 'all-404',
  215. path: '*',
  216. component: resolve(__dirname, '../pages/404.vue')
  217. })
  218. }
  219. module.exports = {
  220. extendRoutes
  221. }