loginUtils.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. // 获取当前页面
  2. export function getActionPage() {
  3. let pages = getCurrentPages();
  4. return pages[pages.length - 1]
  5. }
  6. // 处理分享链接地址
  7. export function getPageUrl(config) {
  8. let page = getActionPage();
  9. let path = '/' + page.route;
  10. let url = '';
  11. // 获取对象可枚举键值列表
  12. let objKeys = Object.keys(page.options);
  13. // 判断有无传值
  14. if (objKeys.length > 0) {
  15. // 循环赋值对象数据
  16. for (let a in page.options) {
  17. // 判断有无邀请人
  18. if (a != 'spread') {
  19. url += a + "=" + page.options[a] + "&"
  20. }
  21. }
  22. path += '?' + url.substr(0, url.length - 1);
  23. }
  24. // 返回处理邀请人后的邀请地址
  25. return path
  26. }
  27. //登录拦截
  28. export function interceptor() {
  29. let pages = getActionPage();
  30. // 获取当前页面
  31. let pageUrl = '/' + pages.route;
  32. let url = '/pages/login/login'
  33. // #ifdef H5
  34. // 判断是否为公众号调用微信授权登录
  35. // let ua =
  36. if (navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger') {
  37. let weichatBrowser = uni.getStorageSync('weichatBrowser');
  38. if (weichatBrowser) {
  39. url = '/pages/public/wxLogin';
  40. }
  41. if (pageUrl != url) {
  42. uni.navigateTo({
  43. url
  44. })
  45. }
  46. } else {
  47. uni.showModal({
  48. title: '提示',
  49. content: '请使用微信扫码!',
  50. })
  51. }
  52. // #endif
  53. // #ifdef MP-WEIXIN
  54. url = '/pages/public/wxLogin';
  55. if (pageUrl != url) {
  56. uni.navigateTo({
  57. url
  58. })
  59. }
  60. // #endif
  61. }
  62. // 保存页面
  63. export function saveUrl() {
  64. // 获取当前页面
  65. let page = getActionPage();
  66. // 获取跳转前路由地址
  67. let path = '/' + page.route;
  68. let url = '';
  69. // 获取对象可枚举键值列表
  70. let objKeys = Object.keys(page.options);
  71. // 判断有无传值
  72. if (objKeys.length > 0) {
  73. // 循环赋值对象数据
  74. for (let a in page.options) {
  75. url += a + "=" + page.options[a] + "&"
  76. }
  77. path += '?' + url.substr(0, url.length - 1);
  78. }
  79. // uni.showModal({
  80. // title: '地址',
  81. // content: path,
  82. // fail: function (res) {
  83. // console.log(res.errMsg);
  84. // uni.showModal({
  85. // title: 'error',
  86. // content: res.errMsg
  87. // })
  88. // }
  89. // })
  90. console.log(path, 'pathpathpathpathpath')
  91. uni.setStorageSync('present', path);
  92. // // 获取当前页面
  93. // let page = getActionPage();
  94. // // 获取跳转前路由地址
  95. // let path = '/' + page.route;
  96. // let url = '';
  97. // // 获取对象可枚举键值列表
  98. // let objKeys = Object.keys(page.options);
  99. // // 判断有无传值
  100. // if (objKeys.length > 0) {
  101. // // 循环赋值对象数据
  102. // for (let a in page.options) {
  103. // url += a + "=" + page.options[a] + "&"
  104. // }
  105. // path += '?' + url.substr(0, url.length - 1);
  106. // }
  107. // console.log(path,1)
  108. // uni.setStorageSync('present', path);
  109. }