EP-WachatApp/eaterplanet_ecommerce/components/get-phone/index.js

84 lines
2.2 KiB
JavaScript

var app = getApp();
Component({
properties: {
visible: {
type: Boolean,
value: false
}
},
methods: {
close: function() {
this.triggerEvent("cancel");
},
getPhoneNumber: function(res) {
var that = this;
wx.checkSession({
success: function() {
console.log("session:", 1), that.getMobile(res);
},
fail: function() {
console.log("session:", 2), wx.removeStorageSync("token");
that.triggerEvent("cancel");
that.triggerEvent("needAuth");
}
});
},
getMobile: function(e) {
var that = this;
if ("getPhoneNumber:ok" === e.detail.errMsg) {
var token = wx.getStorageSync('token');
this.setData({
loading: true
});
wx.checkSession({
success() {
console.log("session_key有效");
app.util.request({
'url': 'entry/wxapp/user',
'data': {
controller: 'user.getPhoneNumber',
token: token,
encryptedData: e.detail.encryptedData,
iv: e.detail.iv
},
method: 'post',
dataType: 'json',
success: function (res) {
if (res.data.code == 0) {
let phoneNumber = res.data.phoneNumber;
wx.setStorage({
key: "mobile",
data: phoneNumber
});
that.triggerEvent("confirm", phoneNumber);
} else {
that.setData({
visible: false
});
wx.showToast({
title: "授权失败",
icon: "none"
});
}
}
})
},
fail() {
console.log("session_key 已经失效");
wx.removeStorageSync("token");
that.triggerEvent("needAuth");
}
})
} else {
that.setData({
visible: false
});
wx.showToast({
title: "授权失败",
icon: "none"
});
}
}
}
});