//index.js //获取应用实例 const app = getApp() const api = require("../../utils/request.js"); Page({ data: { userInfo: {}, hasUserInfo: false, canIUse: wx.canIUse('button.open-type.getUserInfo'), countDown:40, form:{ phone:0, code:0, nickname:0, avatar:0 } }, //事件处理函数 bindViewTap: function () { wx.navigateTo({ url: '../logs/logs' }) }, phoneChange: function (e) { this.data.form.phone = e.detail.value }, codeChange: function (e) { this.data.form.code = e.detail.value }, onLoad: function () { wx.hideHomeButton() if (app.globalData.userInfo) { this.setData({ userInfo: app.globalData.userInfo, hasUserInfo: true }) } else if (this.data.canIUse) { // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 app.userInfoReadyCallback = res => { this.setData({ userInfo: res.userInfo, hasUserInfo: true }) } } else { // 在没有 open-type=getUserInfo 版本的兼容处理 wx.getUserInfo({ success: res => { app.globalData.userInfo = res.userInfo this.setData({ userInfo: res.userInfo, hasUserInfo: true }) } }) } }, getUserInfo: function (e) { app.globalData.userInfo = e.detail.userInfo this.setData({ userInfo: e.detail.userInfo, hasUserInfo: true }) }, sendMsg : function (){ var that = this if(that.isPhone(that.data.form.phone)){ api.request('/crm/consumer/sendcode', 'GET', { phone: that.data.form.phone }).then(res => { wx.showToast({ title: '验证码发送成功!注意查收', icon: 'none' }) getApp().globalData.timer = setInterval(function () { that.startPass() }, 1000) }) }else{ wx.showToast({ title: '请输入正确的手机号!', icon: 'none' }) } }, onGetInfo : function (e){ var that = this if(e.detail.userInfo){ this.setData({ userInfo: e.detail.userInfo }) that.data.form.nickname = e.detail.userInfo.nickName that.data.form.avatar = e.detail.userInfo.avatarUrl } if(that.isPhone(that.data.form.phone)){ that.denglu(that.data.form) }else{ wx.showToast({ title: '请输入正确的手机号!', icon: 'none' }) } }, goMain: function (){ wx.reLaunch({ url: '/pages/main/main', }) }, goadmin: function(){ wx.redirectTo({ url: '/pages/admin/login', }) }, denglu: function (data) { api.request('/crm/consumer/register/', 'POST', data).then(res => { getApp().onLaunch() wx.switchTab({ url: '/pages/main/main', }) }) }, startPass: function(){ var that = this var mil = that.data.countDown if (mil < 2) { that.setData({ countDown:40 }) clearInterval(getApp().globalData.timer) }else{ this.setData({ countDown: mil-1, }); } }, isPhone: function(phone){ var phoneReg = /^[1][3,4,5,6,7,8,9][0-9]{9}$/; if (phoneReg.test(phone)) { return true; } else { return false; } } })