金诚优选前端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

51 lines
1.2 KiB

4 years ago
  1. <template>
  2. <view></view>
  3. </template>
  4. <script>
  5. /* 路由分发页面仅供跳转页面 */
  6. export default {
  7. onLoad(options){
  8. this.routeToPage(options);
  9. },
  10. methods: {
  11. // 路由分发
  12. routeToPage(options){
  13. if(options.route == 'detail'){
  14. options.page_url = '/pages/shop/goodsdetail';
  15. this.joinPagePath(options);
  16. }else if(options.route == 'home'){
  17. options.page_url = '/pages/index/index/index';
  18. this.joinPagePath(options);
  19. }else if(options.route == 'shop'){
  20. options.page_url = '/pages/shop/shopdetail';
  21. this.joinPagePath(options);
  22. }else{
  23. let obj = {
  24. page_url: '/pages/index/index/index' // 啥都不填,默认跳转到首页
  25. };
  26. this.joinPagePath(obj);
  27. }
  28. },
  29. // 拼接地址,并相应跳转
  30. joinPagePath(par){
  31. let path = par.page_url;
  32. let flag = true; // 标志,用于判断拼接次数,?只能出现一次
  33. for(let i in par){
  34. if(i != 'route' && i != 'page_url' && i != 'is_tabbar'){ // 跳过route、page_url、is_tabbar
  35. if(flag){
  36. path += '?'+ i +'='+ par[i];
  37. flag = false;
  38. }else{
  39. path += '&'+ i +'='+ par[i];
  40. }
  41. }
  42. }
  43. this.$url(path, {type: 'redirect'});
  44. }
  45. }
  46. }
  47. </script>
  48. <style>
  49. </style>