Files
barter-app/public/keyPhone.js
2021-07-26 15:01:43 +08:00

85 lines
1.6 KiB
JavaScript

/**
* Web唐明明
* 匆匆数载恍如梦,岁月迢迢华发增。
* 碌碌无为枉半生,一朝惊醒万事空。
* moduleName: 一键登录
*/
import { auth } from '@/apis/interfaces/auth'
import store from '@/store/index'
import { router } from '@/router'
class keyPhone {
constructor(config) {
this.config = {
fullScreen: true,
authButton: {
normalColor: "#c82626",
borderRadius: 0
},
buttons: {
list: [{
provider: "微信",
iconPath: "/static/icons/wechat.png"
}]
},
otherLoginButton: {
borderColor: "#c82626",
title: "其他手机号码登录",
borderRadius: 0,
textColor: "#c82626"
},
privacyTerm: {
privacyItems: [{
url: "https://baidu.com",
title: "用户服务协议"
}]
}
}
}
// 一键登录
keyAuth() {
return new Promise((resolve, reject) => {
wx.login({
provider : 'univerify',
univerifyStyle : this.config,
success : phoneToken => {
let data = phoneToken.authResult
auth({
access_token: data.access_token,
openid : data.openid
}).then(res => {
store.commit('setToken', res.token_type + ' ' + res.access_token)
resolve({
is_new: res.is_new
})
uni.closeAuthView()
})
},
fail : err => {
switch(err.code) {
case '30002':
console.log('其他登录方式')
// router.push({name: 'Sms'})
break
case '30008':
this.wxAuth()
break
}
}
})
})
}
// 微信登录
wxAuth() {
uni.showToast({
title: '微信登录',
icon : 'none'
})
}
}
export default new keyPhone()