login.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  1. // pages/login/login.js
  2. import {
  3. login
  4. } from "../api/user-api";
  5. import {
  6. imgUrl
  7. } from "../api/request"
  8. import {
  9. cacheSet
  10. } from "../../utils/cacheUtil"
  11. Page({
  12. /**
  13. * 页面的初始数据
  14. */
  15. data: {
  16. imgUrl: imgUrl,
  17. agreementImg: '',
  18. agree: false,
  19. canIUse: wx.canIUse('button.open-type.getUserInfo'),
  20. showLogin: false,
  21. deda: 0,
  22. loadText: "登录中..."
  23. },
  24. /**
  25. * 生命周期函数--监听页面加载
  26. */
  27. onLoad(options) {
  28. },
  29. /**
  30. * 生命周期函数--监听页面初次渲染完成
  31. */
  32. onReady() {
  33. },
  34. /**
  35. * 生命周期函数--监听页面显示
  36. */
  37. onShow() {
  38. this.setData({
  39. agree: false,
  40. showLogin: false,
  41. })
  42. this.setData({
  43. agreementImg: '../images/' + 'login-allow.png'
  44. })
  45. },
  46. /**
  47. * 生命周期函数--监听页面隐藏
  48. */
  49. onHide() {
  50. },
  51. agreementSuccess(e) {
  52. if (this.data.agree === true) {
  53. this.setData({
  54. agree: false
  55. })
  56. this.setData({
  57. agreementImg: '../images/' + 'login-allow.png'
  58. })
  59. } else {
  60. this.setData({
  61. agree: true
  62. })
  63. this.setData({
  64. agreementImg: '../images/' + 'login-select-allow.png'
  65. })
  66. }
  67. },
  68. getPhoneNumber(e) {
  69. var that = this
  70. if (this.data.agree === false) {
  71. wx.showToast({
  72. title: '请同意服务协议',
  73. icon: 'error',
  74. duration: 1500 //持续的时间
  75. })
  76. return
  77. }
  78. console.log(e.detail.code)
  79. var phoneCode = e.detail.code
  80. wx.login({
  81. success(res) {
  82. if (res.code) {
  83. let data = {
  84. code: res.code,
  85. phoneCode: phoneCode
  86. };
  87. let int = setInterval(function () {
  88. that.setData({
  89. deda: that.data.deda + 1
  90. })
  91. switch (that.data.deda) {
  92. case 1:
  93. that.setData({
  94. loadText: "初始化华龙网用户数据中..."
  95. })
  96. break
  97. case 7:
  98. that.setData({
  99. loadText: "初始化静态资源中"
  100. })
  101. break
  102. }
  103. }, 1000)
  104. that.setData({
  105. showLogin: true
  106. })
  107. login(data).then(res => {
  108. if (res.result) {
  109. cacheSet('token', res.data.token, 3600 * 24)
  110. // wx.setStorageSync("token", res.data.token)
  111. wx.setStorageSync('imgUrl', res.data.imgUrl)
  112. wx.setStorageSync('nickName', res.data.nickName)
  113. wx.setStorageSync('hlToken', res.data.hlToken)
  114. wx.setStorageSync('userid', res.data.userId)
  115. // 返回上一页携带登录标志
  116. let pages = getCurrentPages();
  117. let prevPage = pages[pages.length - 2];
  118. that.setData({
  119. showLogin: false,
  120. deda: 0,
  121. loadText: "登录中..."
  122. })
  123. clearInterval(int)
  124. prevPage.setData({
  125. loginReturnFlag: true
  126. })
  127. wx.navigateBack({
  128. delta: 1
  129. });
  130. } else {
  131. that.setData({
  132. showLogin: false
  133. })
  134. wx.showModal({
  135. title: '登录失败',
  136. content: '登录失败,请重试',
  137. complete: (res) => { }
  138. })
  139. }
  140. })
  141. } else {
  142. console.log('登录失败!' + res.errMsg)
  143. }
  144. }
  145. })
  146. },
  147. protocolTips() {
  148. wx.showToast({
  149. title: '请同意服务协议',
  150. icon: 'error',
  151. duration: 1500 //持续的时间
  152. })
  153. return
  154. },
  155. showSettingToast: function (e) {
  156. wx.showModal({
  157. title: '提示!',
  158. confirmText: '去设置',
  159. showCancel: false,
  160. content: e,
  161. success: function (res) {
  162. if (res.confirm) {
  163. wx.navigateTo({
  164. // url: '../setting/setting',
  165. })
  166. }
  167. }
  168. })
  169. },
  170. serviceAgreement(){
  171. wx.navigateTo({
  172. url: '/pages/aticle1/aticle',
  173. })
  174. },
  175. informationProcessing(){
  176. wx.navigateTo({
  177. url: '/pages/aticle2/aticle',
  178. })
  179. },
  180. /**
  181. * 生命周期函数--监听页面卸载
  182. */
  183. onUnload() {
  184. },
  185. /**
  186. * 页面相关事件处理函数--监听用户下拉动作
  187. */
  188. onPullDownRefresh() {
  189. },
  190. /**
  191. * 页面上拉触底事件的处理函数
  192. */
  193. onReachBottom() {
  194. },
  195. /**
  196. * 用户点击右上角分享
  197. */
  198. onShareAppMessage() {
  199. return {
  200. title: '登录'
  201. }
  202. }
  203. })