App.vue 3.9 KB

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