263 lines
6.3 KiB
JavaScript
263 lines
6.3 KiB
JavaScript
// mycomponent/yz_bindMobile/yz_bindMobile.js
|
|
const app = getApp();
|
|
Component({
|
|
/**
|
|
* 组件的属性列表
|
|
*/
|
|
properties: {
|
|
showVer: {
|
|
type: null,
|
|
},
|
|
},
|
|
|
|
/**
|
|
* 组件的初始数据
|
|
*/
|
|
data: {
|
|
showVerification: false, //绑定手机
|
|
imgcode: "",
|
|
count: "",
|
|
form: {
|
|
mobile: "",
|
|
//验证码
|
|
code: "",
|
|
captcha: "",
|
|
},
|
|
showContent: false,
|
|
protocol_title: "",
|
|
protocol_content: "",
|
|
},
|
|
observers: {
|
|
showVer: function (show) {
|
|
this.setData({
|
|
showVerification: show,
|
|
});
|
|
console.log(show, ";sdasdasd");
|
|
},
|
|
},
|
|
lifetimes: {
|
|
attached: function() {
|
|
// 在组件实例进入页面节点树时执行
|
|
this.initShow();
|
|
},
|
|
detached: function() {
|
|
// 在组件实例被从页面节点树移除时执行
|
|
},
|
|
},
|
|
/**
|
|
* 组件的方法列表
|
|
*/
|
|
methods: {
|
|
showContentTap(){
|
|
this.setData({
|
|
showContent:true
|
|
});
|
|
},
|
|
initShow() {
|
|
this.getimgdata();
|
|
this.getProtocolInfo();
|
|
this.showVerification = true;
|
|
},
|
|
closeShow() {
|
|
this.setData({
|
|
showVerification: false,
|
|
});
|
|
},
|
|
hide() {
|
|
this.setData({
|
|
showVerification: false,
|
|
});
|
|
},
|
|
getProtocolInfo() {
|
|
var that = this;
|
|
var urlStr = app.getNetAddresss("setting.get-member-protocol");
|
|
app._getNetWork({
|
|
showToastIn: false,
|
|
url: urlStr,
|
|
success: function (resdata) {
|
|
var res = resdata.data;
|
|
if (res.result == 1) {
|
|
that.setData({
|
|
protocol_content: res.data.content,
|
|
protocol_title: res.data.title,
|
|
});
|
|
}
|
|
},
|
|
fail: function (res) {},
|
|
});
|
|
},
|
|
getimgdata() {
|
|
var that = this;
|
|
var urlStr = app.getNetAddresss("home-page.getCaptcha");
|
|
app._getNetWork({
|
|
showToastIn: false,
|
|
url: urlStr,
|
|
success: function (resdata) {
|
|
var res = resdata.data;
|
|
if (res.result == 1) {
|
|
if (res.data.captcha.status && res.data.captcha.status == "0") {
|
|
that.setData({
|
|
imgcode: null,
|
|
});
|
|
}
|
|
if (res.data.captcha.img) {
|
|
that.setData({
|
|
imgcode: res.data.captcha.img,
|
|
});
|
|
}
|
|
}
|
|
},
|
|
fail: function (res) {},
|
|
});
|
|
},
|
|
tapPhone(e) {
|
|
console.log(e);
|
|
let key = e.currentTarget.dataset.key;
|
|
let tag = e.detail.value;
|
|
if (key == "phone") {
|
|
this.setData({
|
|
"form.mobile": tag,
|
|
});
|
|
} else if (key == "cap") {
|
|
this.setData({
|
|
"form.captcha": tag,
|
|
});
|
|
} else if (key == "code") {
|
|
this.setData({
|
|
"form.code": tag,
|
|
});
|
|
}
|
|
},
|
|
// 获取验证码
|
|
VerificationCode() {
|
|
if (app._isTextEmpty(this.data.form.captcha) && this.data.imgcode) {
|
|
wx.showToast({
|
|
title: "请填图形验证码",
|
|
icon: "none",
|
|
duration: 1000,
|
|
});
|
|
return;
|
|
}
|
|
if (app._isTextEmpty(this.data.form.mobile)) {
|
|
wx.showToast({
|
|
title: "请填写手机号",
|
|
icon: "none",
|
|
duration: 1000,
|
|
});
|
|
} else {
|
|
wx.showLoading({
|
|
title: "发送中",
|
|
});
|
|
var that = this;
|
|
var urlStr = app.getNetAddresss("member.register.sendCodeV2");
|
|
app._getNetWork({
|
|
showToastIn: false,
|
|
url: urlStr,
|
|
data: {
|
|
mobile: this.data.form.mobile,
|
|
captcha: this.data.form.captcha,
|
|
},
|
|
success: function (resdata) {
|
|
var res = resdata.data;
|
|
wx.hideLoading({
|
|
success: (res) => {},
|
|
});
|
|
if (res.result == 1) {
|
|
that.getCode();
|
|
} else {
|
|
that.setData({
|
|
"form.captcha": "",
|
|
});
|
|
that.getimgdata();
|
|
}
|
|
},
|
|
fail: function (res) {},
|
|
});
|
|
}
|
|
},
|
|
// 60秒倒计时
|
|
getCode() {
|
|
const TIME_COUNT = 60;
|
|
if (!this.data.timer) {
|
|
this.data.count = TIME_COUNT;
|
|
this.data.timer = setInterval(() => {
|
|
if (this.data.count > 0 && this.data.count <= TIME_COUNT) {
|
|
this.data.count--;
|
|
this.setData({
|
|
count:this.data.count
|
|
});
|
|
} else {
|
|
clearInterval(this.timer);
|
|
this.data.count = 0;
|
|
this.data.timer = null;
|
|
this.setData({
|
|
count:this.data.count,
|
|
timer:this.data.timer
|
|
});
|
|
}
|
|
}, 1000);
|
|
}
|
|
},
|
|
bindMobile() {
|
|
//发送获取验证码的请求
|
|
if (app._isTextEmpty(this.data.form.mobile)) {
|
|
wx.showToast({
|
|
title: "手机号码不能为空",
|
|
icon: "none",
|
|
duration: 1000,
|
|
});
|
|
return;
|
|
}
|
|
if (app._isMoblie(this.data.form.mobile)) {
|
|
wx.showToast({
|
|
title: "请输入正确的手机号",
|
|
icon: "none",
|
|
duration: 1000,
|
|
});
|
|
return;
|
|
}
|
|
if (app._isTextEmpty(this.data.form.code)) {
|
|
wx.showToast({
|
|
title: "请填写验证码",
|
|
icon: "none",
|
|
duration: 1000,
|
|
});
|
|
return;
|
|
}
|
|
if (this.imgcode) {
|
|
if (app._isTextEmpty(this.data.form.captcha)) {
|
|
wx.showToast({
|
|
title: "图形验证码不能为空",
|
|
icon: "none",
|
|
duration: 1000,
|
|
});
|
|
return;
|
|
}
|
|
}
|
|
var that = this;
|
|
var urlStr = app.getNetAddresss("member.member.justBindMobile");
|
|
app._getNetWork({
|
|
showToastIn: false,
|
|
url: urlStr,
|
|
data: this.data.form,
|
|
success: function (resdata) {
|
|
var res = resdata.data;
|
|
if (res.result == 1) {
|
|
wx.showToast({
|
|
title: "绑定成功!",
|
|
icon: "none",
|
|
duration: 1000,
|
|
});
|
|
that.setData({
|
|
showContent: false,
|
|
showVerification: false,
|
|
});
|
|
that.triggerEvent("bindSuccess");
|
|
}
|
|
},
|
|
fail: function (res) {},
|
|
});
|
|
},
|
|
},
|
|
});
|