loginUtils.js 2.3 KB

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