import { $wuxCountDown } from '../../components/dist/index' import { get, post, } from '../../utils/http'; Page({ /** * 页面的初始数据 */ data: { status: 0, phone: '', phoneVal: '', codeVal: '', sms_token: '' }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { console.log(options) this.setData({ phone: options.phone }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { if(this.c1) this.c1.stop() }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, /** * 监听输入手机号 */ onChangePhone(e) { this.setData({ phoneVal: e.detail.value }) }, /** * 监听输入验证码 */ onChangeCode(e) { this.setData({ codeVal: e.detail.value }) }, /** * 获取验证码 * api/sms/send_verify_code */ getCode() { let { phoneVal,status,sms_token } = this.data; if(phoneVal == '') { wx.showToast({ title: '请输入手机号', icon: 'none' }) return; } if (this.c1 && this.c1.interval) return !1 post('api/sms/send_verify_code',{ type: status == 0 ? 1 : 2, mobile: phoneVal, sms_token },(res) => { wx.showToast({ title: res.msg, }) this.c1 = new $wuxCountDown({ date: +(new Date) + 60000, onEnd() { this.setData({ c1: '重新获取验证码', }) }, render(date) { const sec = this.leadingZeros(date.sec, 2) + ' 秒 ' date.sec !== 0 && this.setData({ c1: sec, }) }, }) }) }, /** * 校验 */ onCheck() { if(this.data.status == 0) { this.verifyMobile(); } else { this.changeMobile() } // this.setData({ // status: ++this.data.status, // phoneVal: '', // codeVal: '' // }) }, /** * 校验旧手机号的验证码 * /api/user/verify_mobile */ verifyMobile() { return new Promise((resolve,reject) => { post('api/user/verify_mobile',{ verify_code: this.data.codeVal },(res) => { if(this.c1){ this.c1.stop() this.setData({ c1: null }) } wx.showToast({ title: res.msg, }) this.setData({ status: ++this.data.status, phoneVal: '', codeVal: '', sms_token: res.data.sms_token }) resolve() }) }) }, /** * 更换新手机 * api/user/change_mobile */ changeMobile() { let { phoneVal,codeVal,sms_token } = this.data; post('api/user/change_mobile',{ verify_code:codeVal, mobile:phoneVal, sms_token },(res) => { if(this.c1){ this.c1.stop() this.setData({ c1: null }) } wx.showToast({ title: res.msg, }) this.setData({ status: ++this.data.status, phoneVal: '', codeVal: '', }) }) } })