loginUtils.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  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 weichatBrowser = uni.getStorageSync('weichatBrowser');
  36. if (weichatBrowser) {
  37. url = '/pages/public/wxLogin';
  38. }
  39. // #endif
  40. // #ifdef MP-WEIXIN
  41. url = '/pages/public/wxLogin';
  42. // #endif
  43. if (pageUrl != url) {
  44. uni.navigateTo({
  45. url
  46. })
  47. }
  48. }
  49. // 保存页面
  50. export function saveUrl() {
  51. // 获取当前页面
  52. let page = getActionPage();
  53. // 获取跳转前路由地址
  54. let path = '/' + page.route;
  55. let url = '';
  56. // 获取对象可枚举键值列表
  57. let objKeys= Object.keys(page.options);
  58. // 判断有无传值
  59. if(objKeys.length>0){
  60. // 循环赋值对象数据
  61. for(let a in page.options) {
  62. url += a+"="+page.options[a]+"&"
  63. }
  64. path += '?' + url.substr(0,url.length-1);
  65. }
  66. // uni.showModal({
  67. // title: '地址',
  68. // content: path,
  69. // fail: function (res) {
  70. // console.log(res.errMsg);
  71. // uni.showModal({
  72. // title: 'error',
  73. // content: res.errMsg
  74. // })
  75. // }
  76. // })
  77. uni.setStorageSync('present', path);
  78. // // 获取当前页面
  79. // let page = getActionPage();
  80. // // 获取跳转前路由地址
  81. // let path = '/' + page.route;
  82. // let url = '';
  83. // // 获取对象可枚举键值列表
  84. // let objKeys = Object.keys(page.options);
  85. // // 判断有无传值
  86. // if (objKeys.length > 0) {
  87. // // 循环赋值对象数据
  88. // for (let a in page.options) {
  89. // url += a + "=" + page.options[a] + "&"
  90. // }
  91. // path += '?' + url.substr(0, url.length - 1);
  92. // }
  93. // console.log(path,1)
  94. // uni.setStorageSync('present', path);
  95. }