loginUtils.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. export function getActionPage() {
  2. let pages = getCurrentPages();
  3. return pages[pages.length - 1]
  4. }
  5. //登录拦截
  6. export function interceptor() {
  7. let pages = getActionPage();
  8. // 获取当前页面
  9. let pageUrl = '/' + pages.route;
  10. let url = '/pages/public/login'
  11. // #ifdef H5
  12. // 判断是否为公众号调用微信授权登录
  13. let weichatBrowser = uni.getStorageSync('weichatBrowser');
  14. if (weichatBrowser) {
  15. url = '/pages/public/wxLogin';
  16. }
  17. // #endif
  18. // #ifdef MP-WEIXIN
  19. url = '/pages/public/wxLogin';
  20. // #endif
  21. // #ifdef APP-PLUS
  22. url = '/pages/public/login';
  23. // #endif
  24. if (pageUrl != url) {
  25. uni.navigateTo({
  26. url
  27. })
  28. }
  29. }
  30. // 保存页面
  31. export function saveUrl() {
  32. console.log(111)
  33. // 获取当前页面
  34. let page = getActionPage();
  35. // 获取跳转前路由地址
  36. let path = '/' + page.route;
  37. // 判断是否在商品页
  38. if (path == '/pages/product/product') {
  39. if (page.spread) {
  40. if (page.type) {
  41. path = path + '?id=' + page.id +'&type='+page.goodsType+'&spread='+page.spread;
  42. }else{
  43. path = path + '?id=' + page.id+'&spread='+page.spread;
  44. }
  45. }else{
  46. if (page.type) {
  47. path = path + '?id=' + page.id +'&type=' + page.goodsType;
  48. }else{
  49. path = path + '?id=' + page.options.id;
  50. }
  51. }
  52. }
  53. //订单支付页面
  54. if (path == '/pages/order/createOrder') {
  55. // 判断是否为参团订单
  56. if (page.option.type == "pink") {
  57. const data = page.option;
  58. path = path + '?pinkid=' + data.pinkid + '&type=pink' + '&pid=' + data.pid + '&gid=' + data.gid;
  59. }
  60. }
  61. //邀请好友拼团页面
  62. if (path == '/pages/product/details') {
  63. if (page.spread) {
  64. path = path + '?pink_id=' + page.gp_id + '&spread=' + page.spread +'&teamid='+page.teamid;
  65. }else{
  66. path = path + '?pink_id=' + page.gp_id +'&teamid='+ page.teamid;
  67. }
  68. }
  69. //我的订单页面
  70. if (path == '/pages/order/order') {
  71. if (page.state) {
  72. path = path + '?state='+page.state;
  73. }
  74. }
  75. //我的订单页面
  76. if (path == '/pages/index/index') {
  77. if (page.bingding) {
  78. path = path + '?bingding='+page.bingding;
  79. }
  80. console.log(path)
  81. }
  82. //文章详情页面
  83. if (path == '/pages/moments/details') {
  84. if (page.spread) {
  85. path = path +'?id=' + page.id + '&spread='+ page.spread;
  86. }else{
  87. path = path +'?id=' + page.id;
  88. }
  89. }
  90. // 判断是否在登录页
  91. // 保存当前过去页面
  92. uni.setStorageSync('present', path);
  93. }