routes.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import { autoSubcrebe } from './utils'
  2. const tabRoutes = {
  3. home: "/pages/index/index",
  4. my: "/pages/my/my",
  5. chatList: "/pages/chat-list/chat-list",
  6. }
  7. const routes = {
  8. search: "/pages/search/search",
  9. exhibitionDetail: "/pages/exhibition-detail/exhibition-detail",
  10. exhibitionRegister: "/pages/exhibition-register/exhibition-register",
  11. exhibitionEnterprise :"/pages/exhibition-enterprise/exhibition-enterprise",
  12. goodsTabs: "/pages/goods-tabs/goods-tabs",
  13. userInfo: "/pages/user-info/user-info",
  14. collectGoods: "/pages/collect-goods/collect-goods",
  15. collectEnterprise: "/pages/collect-enterprise/collect-enterprise",
  16. businessCard: "/pages/business-card/business-card",
  17. businessCardDetail: '/pages/business-card/detail/business-card-detail',
  18. goodsDetail: "/pages/goods-detail/goods-detail",
  19. dataReport: "/dataReport/pages/data-report/data-report",
  20. find: '/pages/find/find',
  21. scene: '/pages/web/web',
  22. login: '/pages/login/login',
  23. chat: "/pages/chat/chat",
  24. logout: "/pages/logout/logout",
  25. scan: "/pages/business-card/scan/scan",
  26. scanResult: "/pages/business-card/scan-result/scan-result"
  27. }
  28. function sortQuery (query) {
  29. return Object.keys(query).map(key => `${key}=${query[key]}`).join('&')
  30. }
  31. function toUrl (url, query) {
  32. if (query) {
  33. query = sortQuery(query)
  34. }
  35. if (tabRoutes[url]) {
  36. wx.switchTab({
  37. url: `${tabRoutes[url]}?${query}`,
  38. })
  39. } else {
  40. wx.navigateTo({
  41. url: `${routes[url]}?${query}`,
  42. })
  43. }
  44. }
  45. export default {
  46. tabRoutes,
  47. push (options) {
  48. autoSubcrebe()
  49. if (typeof options === 'string') {
  50. return toUrl(options)
  51. }
  52. const { url, query } = options
  53. return toUrl(url, query)
  54. },
  55. back () {
  56. wx.navigateBack()
  57. }
  58. }