changeMobile2.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. // pages/changeMobile/changeMobile2.js
  2. const utils = require('../../utils/util.js')
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. userInfo: '',
  9. mobile: '',
  10. smsCode: '',
  11. password: '',
  12. canSend: false, //是否可以发送手机验证码(true为不行,false为可以)
  13. time: 60, //倒计时
  14. timeText: '获取验证码', //倒计时文字
  15. },
  16. /**
  17. * 生命周期函数--监听页面加载
  18. */
  19. onLoad: function (options) {
  20. this.setData({
  21. userInfo: utils.getInfo()
  22. })
  23. },
  24. //修改手机号码
  25. submitData() {
  26. let params = {
  27. reqChannel: 5,
  28. oriMobile: this.data.userInfo.mobile,
  29. mobile: utils.trimAll(this.data.mobile),
  30. smsCode: utils.trimAll(this.data.smsCode),
  31. password: utils.trimAll(this.data.password)
  32. }
  33. if (params.mobile === '') {
  34. utils.toast('手机号码不能为空')
  35. return
  36. }
  37. if (params.smsCode === '') {
  38. utils.toast('验证码不能为空')
  39. return
  40. }
  41. if (params.password === '') {
  42. utils.toast('密码不能为空')
  43. return
  44. }
  45. utils.axios({
  46. method: 'post',
  47. url: '/auth/comm/user/modifyMobile',
  48. data: params,
  49. sendBefore() {
  50. wx.showLoading({
  51. title: '修改提交中...',
  52. mask: true
  53. })
  54. },
  55. complete() {
  56. wx.hideLoading()
  57. },
  58. success: res => {
  59. let user = wx.getStorageSync('userInfo')
  60. user.mobile = params.mobile
  61. wx.setStorageSync('userInfo', user)
  62. this.toSuccess()
  63. }
  64. })
  65. },
  66. //获取验证码
  67. sendCode(e) {
  68. let params = {
  69. phoneNo: utils.trimAll(this.data.mobile),
  70. }
  71. if (params.phoneNo === '') {
  72. utils.toast('手机号码不能为空')
  73. return
  74. }
  75. if (!utils.testMobile(params.phoneNo)) {
  76. utils.toast('请填写正确的手机号码')
  77. return
  78. }
  79. utils.axios({
  80. method: 'post',
  81. url: '/sms/getSmscode',
  82. data: params,
  83. sendBefore() {
  84. wx.showLoading({
  85. title: '验证码发送中...',
  86. mask: true
  87. })
  88. },
  89. complete() {
  90. wx.hideLoading()
  91. },
  92. success: () => {
  93. this.countDown()
  94. utils.toast('发送成功')
  95. }
  96. })
  97. },
  98. //获取新手机号
  99. getMobile(e) {
  100. let mobile = e.detail.value
  101. this.setData({
  102. mobile
  103. })
  104. },
  105. //获取验证码
  106. getSmsCode(e) {
  107. let smsCode = e.detail.value
  108. this.setData({
  109. smsCode
  110. })
  111. },
  112. //获取密码
  113. getPwd(e) {
  114. let password = e.detail.value
  115. this.setData({
  116. password
  117. })
  118. },
  119. //修改完成
  120. toSuccess() {
  121. wx.navigateTo({
  122. url: '/pages/changeMobile/changeMobile3'
  123. })
  124. },
  125. //控制发送验证码按钮是否可以点击
  126. controlSend() {
  127. if (utils.testMobile(this.data.account)) {
  128. this.setData({
  129. canSend: false
  130. })
  131. } else {
  132. this.setData({
  133. canSend: true
  134. })
  135. }
  136. },
  137. //倒计时
  138. countDown() {
  139. let time = this.data.time
  140. this.setData({
  141. canSend: true
  142. })
  143. let clearTimer = setInterval(() => {
  144. if (time <= 0) {
  145. clearInterval(clearTimer)
  146. this.setData({
  147. time: 60,
  148. timeText: '重发验证码',
  149. canSend: false
  150. })
  151. } else {
  152. time--
  153. this.setData({
  154. time: time,
  155. timeText: time + '秒后可重发'
  156. })
  157. }
  158. }, 1000)
  159. },
  160. /**
  161. * 生命周期函数--监听页面初次渲染完成
  162. */
  163. onReady: function () {
  164. },
  165. /**
  166. * 生命周期函数--监听页面显示
  167. */
  168. onShow: function () {
  169. },
  170. /**
  171. * 生命周期函数--监听页面隐藏
  172. */
  173. onHide: function () {
  174. },
  175. /**
  176. * 生命周期函数--监听页面卸载
  177. */
  178. onUnload: function () {
  179. },
  180. /**
  181. * 页面相关事件处理函数--监听用户下拉动作
  182. */
  183. onPullDownRefresh: function () {
  184. },
  185. /**
  186. * 页面上拉触底事件的处理函数
  187. */
  188. onReachBottom: function () {
  189. },
  190. /**
  191. * 用户点击右上角分享
  192. */
  193. onShareAppMessage: function () {
  194. }
  195. })