login.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. var http = require("../../utils/http.js");
  2. Page({
  3. /**
  4. * 页面的初始数据
  5. */
  6. data: {
  7. showBindTips: false
  8. },
  9. /**
  10. * 微信登录
  11. */
  12. bindGetUserInfo(e) {
  13. if (e.detail.userInfo) {
  14. wx.setStorageSync('userInfo', e.detail.userInfo)
  15. http.getToken()
  16. // 判断是否已经有绑定账号登陆
  17. if (!wx.getStorageSync('loginResult').nickName) {
  18. this.setData({
  19. showBindTips: true
  20. })
  21. } else {
  22. wx.switchTab({
  23. url: '/pages/index/index'
  24. })
  25. }
  26. } else {
  27. wx.navigateTo({
  28. url: '/pages/user/user',
  29. })
  30. }
  31. },
  32. /**
  33. * 获取用户手机号
  34. */
  35. getPhoneNumber(e) {
  36. if (e.detail.errMsg === 'getPhoneNumber:ok') {
  37. var params = {
  38. url: '/user/registerOrBindUser',
  39. method: 'PUT',
  40. data: {
  41. appType: 1,
  42. encryptedData: e.detail.encryptedData,
  43. ivStr: e.detail.iv,
  44. img: wx.getStorageSync('userInfo').avatarUrl || '',
  45. nickName: wx.getStorageSync('userInfo').nickName || '',
  46. validateType: 2,
  47. registerOrBind:2 // 验证类型 1注册 2绑定
  48. },
  49. callBack: res => {
  50. http.loginSuccess(res)
  51. wx.switchTab({
  52. url: '/pages/index/index'
  53. })
  54. }
  55. }
  56. http.request(params)
  57. } else {
  58. wx.showToast({
  59. title: '授权失败',
  60. icon: 'none'
  61. })
  62. }
  63. },
  64. /**
  65. * 跳转账号登陆
  66. */
  67. toLogin() {
  68. wx.navigateTo({
  69. url: '/pages/accountLogin/accountLogin',
  70. })
  71. },
  72. /**
  73. * 生命周期函数--监听页面加载
  74. */
  75. onLoad: function(options) {
  76. },
  77. /**
  78. * 生命周期函数--监听页面初次渲染完成
  79. */
  80. onReady: function() {
  81. },
  82. /**
  83. * 生命周期函数--监听页面显示
  84. */
  85. onShow: function() {
  86. // 微信解密更新code
  87. wx.login({
  88. success: res => {
  89. // 发送 res.code 到后台换取 openId, sessionKey, unionId
  90. http.request({
  91. login: true,
  92. url: '/appLogin',
  93. data: {
  94. principal: res.code,
  95. appType: 1
  96. },
  97. callBack: result => {
  98. // loginSuccess(result, fn)
  99. wx.setStorageSync('tempToken', 'bearer' + result.access_token)
  100. }
  101. }, true)
  102. },
  103. fail:err=>{
  104. }
  105. })
  106. },
  107. /**
  108. * 生命周期函数--监听页面隐藏
  109. */
  110. onHide: function() {
  111. },
  112. /**
  113. * 生命周期函数--监听页面卸载
  114. */
  115. onUnload: function() {
  116. },
  117. /**
  118. * 页面相关事件处理函数--监听用户下拉动作
  119. */
  120. onPullDownRefresh: function() {
  121. },
  122. /**
  123. * 页面上拉触底事件的处理函数
  124. */
  125. onReachBottom: function() {
  126. },
  127. /**
  128. * 用户点击右上角分享
  129. */
  130. onShareAppMessage: function() {
  131. }
  132. })