App.vue 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. <script>
  2. import {
  3. mapMutations,mapState
  4. } from 'vuex';
  5. export default {
  6. methods: {
  7. ...mapMutations(['setOpenid','login','showDialog','setcode','islogionsuccess','beginload'])
  8. },
  9. computed:{
  10. ...mapState([
  11. 'hasLogin', // 用户是否同意授权
  12. 'userInfo', // 同意授权用户头像
  13. 'successlogion', // 同意手机号授权 登录成功
  14. 'sessionId', // 登录成功的token
  15. 'getcode', // logion时候获取的code session_key oppen_id
  16. 'beginload'
  17. ]),
  18. },
  19. onLaunch: function() {
  20. // 用户登录
  21. let that = this;
  22. let sessionId = uni.getStorageSync('sessionId');// 用户token
  23. console.log(sessionId);
  24. let userInfo = uni.getStorageSync('userInfo');// 用户头像信息
  25. let getcode= uni.getStorageSync('getcode');// 用户code oppenid
  26. console.log(userInfo)
  27. if(sessionId != '') {
  28. uni.checkSession({
  29. success(){
  30. console.log("登录未过期")
  31. that.setOpenid(sessionId);
  32. that.login(userInfo);
  33. that.setcode(getcode);
  34. that.showDialog(true);
  35. that.beginload(true);
  36. that.islogionsuccess(true);
  37. },
  38. fail(){
  39. console.log("登录过期")
  40. // 登录过期 重新登录
  41. uni.login({
  42. provider: 'weixin',
  43. success: (res) => {
  44. let code = res.code;
  45. uni.request({
  46. url: 'https://www.qzaiwang.com' +'/v1/entry/mp_openid',
  47. method:'post',
  48. data: {
  49. code: code
  50. },
  51. success: (res) => {
  52. let { data } = res.data;
  53. console.log(data);
  54. data.code = code;
  55. that.setcode(data);
  56. let token = data.token;
  57. if(token == '') {
  58. that.setOpenid(token); // 保存用户token
  59. that.islogionsuccess(false);
  60. }else {
  61. that.setOpenid(token); // 保存用户token
  62. that.islogionsuccess(true);
  63. }
  64. that.beginload(true);
  65. that.showDialog(false); // 没有同意授权头像等;
  66. that.login(); // 清空用户头像信息
  67. }
  68. })
  69. },
  70. fail: function(res) {
  71. }
  72. })
  73. }
  74. })
  75. }else {
  76. console.log("登录")
  77. uni.login({
  78. provider: 'weixin',
  79. success: (res) => {
  80. let code = res.code;
  81. console.log(code);
  82. uni.request({
  83. url: 'https://www.qzaiwang.com' +'/v1/entry/mp_openid',
  84. method:'post',
  85. data: {
  86. code: code
  87. },
  88. success: (res) => {
  89. console.log("ddddd")
  90. let { data } = res.data;
  91. data.code = code;
  92. this.setcode(data); // 保存用户登录code session
  93. let token = data.token;
  94. if(token == '') {
  95. this.setOpenid(token); // 保存用户token
  96. this.islogionsuccess(false);
  97. }else {
  98. this.setOpenid(token); // 保存用户token
  99. this.islogionsuccess(true);
  100. }
  101. this.beginload(true);
  102. this.showDialog(false); // 没有同意授权头像等;
  103. this.login(); // 清空用户头像信息
  104. }
  105. })
  106. },
  107. fail: function(res) {
  108. consoel.log(res);
  109. }
  110. })
  111. };
  112. },
  113. onShow: function() {
  114. console.log('App Show')
  115. },
  116. onHide: function() {
  117. console.log('App Hide')
  118. }
  119. }
  120. </script>
  121. <style>
  122. /*每个页面公共css */
  123. @import '/wxcomponents/dist/common/index.wxss';
  124. @import '/common/uin.css';
  125. </style>