<template>
|
|
<view class="content">
|
|
<view style="height: 166rpx; width: 100%;"></view>
|
|
<view class="a1">手机号快捷登录</view>
|
|
<view class="a2">美好服务即刻享受</view>
|
|
<view class="a3" @click="clickStaff">
|
|
<img width="100%" src="/static/logo.png" alt="" />
|
|
</view>
|
|
<view class="a4">上门服务服务平台</view>
|
|
|
|
<button class="a5" @click="clickLogin()">微信一键(注册)登录</button>
|
|
|
|
<view class="a6">
|
|
<view class="a7">✓</view>
|
|
已同意<span
|
|
@click="keyValue = 'policy';
|
|
configPopupShow = true">《隐私政策》</span>
|
|
<span @click="keyValue = 'service';configPopupShow = true">《服务条款》</span>
|
|
</view>
|
|
|
|
<configPopup
|
|
:keyValue="keyValue"
|
|
:show="configPopupShow"
|
|
:list="config"
|
|
@close="configPopupShow = false"/>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import configPopup from '@/components/configPopup'
|
|
export default {
|
|
components : {
|
|
configPopup
|
|
},
|
|
data() {
|
|
return {
|
|
step: 2,
|
|
openid: '',
|
|
code: undefined,
|
|
configPopupShow : false,
|
|
keyValue : '',
|
|
config : []
|
|
}
|
|
},
|
|
onLoad() {
|
|
// this.getConfig()
|
|
this.code = this.GetQueryString('code');
|
|
if (!this.code) {
|
|
this.getwx_authorize();
|
|
}
|
|
// if (this.code) {
|
|
// this.toWxLogin(this.code)
|
|
// }
|
|
},
|
|
methods: {
|
|
clickCancel() {
|
|
uni.navigateTo({
|
|
url: '/pages/login/mobile'
|
|
})
|
|
},
|
|
clickStaff() {
|
|
uni.navigateTo({
|
|
url: '/pages/staff/center'
|
|
})
|
|
},
|
|
clickLogin() {
|
|
this.code = this.GetQueryString('code');
|
|
if (this.code) {
|
|
//直接去登录发起请求
|
|
this.toWxLogin(this.code)
|
|
} else {
|
|
//获取code 静默授权
|
|
this.getwx_authorize();
|
|
}
|
|
},
|
|
loginOrRegister(encryptData) {
|
|
console.log('encryptData', encryptData);
|
|
uni.setStorageSync("userid", "1")
|
|
uni.switchTab({
|
|
url: '/pages/index/index'
|
|
})
|
|
this.$httpGet("/wxma/getMobile", {
|
|
encryptedData: encryptData
|
|
}, (res) => {
|
|
uni.setStorageSync("userid", "1")
|
|
})
|
|
},
|
|
getwx_authorize() {
|
|
// let vid = uni.getStorageSync("ivcode");
|
|
//授权的回调地址
|
|
let redirect_uri = encodeURIComponent(import.meta.env.VITE_REDIRECT_URI + '/#/pages/login/login');
|
|
//这是我们公众号的appid
|
|
let appid = import.meta.env.VITE_APPID;
|
|
//静默授权
|
|
window.location.href="https://open.weixin.qq.com/connect/oauth2/authorize?appid="+appid+'&redirect_uri='+redirect_uri+'&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect'+'&t='+new Date().getTime();
|
|
//修改授权参数
|
|
// window.location.href = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + appid +
|
|
// '&redirect_uri=' + redirect_uri + '&response_type=code&scope=snsapi_userinfo&state=' + vid +
|
|
// '&connect_redirect=1#wechat_redirect';
|
|
},
|
|
//获取url中参数的方法
|
|
GetQueryString(name) {
|
|
var url = window.location.href;
|
|
try {
|
|
var cs = url.split('?')[1]; //获取?之后的参数字符串
|
|
var cs_arr = cs.split('&'); //参数字符串分割为数组
|
|
for (var i = 0; i < cs_arr.length; i++) { //遍历数组,拿到json对象
|
|
if (cs_arr[i].split('=')[0] == name) {
|
|
return cs_arr[i].split('=')[1];
|
|
}
|
|
}
|
|
return "";
|
|
} catch {
|
|
return "";
|
|
}
|
|
},
|
|
//微信登录
|
|
toWxLogin(code) {
|
|
this.vid = uni.getStorageSync("ivcode");
|
|
this.$api('wxLogin', { code }, res=>{
|
|
if(res.code == 200){
|
|
uni.setStorageSync("token", res.result.token)
|
|
uni.setStorageSync("userInfo", JSON.stringify(res.result.userInfo))
|
|
location.href = import.meta.env.VITE_REDIRECT_URI + '/#/pages/index/index'
|
|
}else{
|
|
location.href = import.meta.env.VITE_REDIRECT_URI + '/#/pages/login/login'
|
|
}
|
|
})
|
|
},
|
|
getConfig() {
|
|
this.vid = uni.getStorageSync("ivcode");
|
|
this.$api('getConfig', {} ,res => {
|
|
if(res.code == 200){
|
|
this.config = res.result
|
|
}
|
|
})
|
|
},
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped>
|
|
.a1 {
|
|
width: 336rpx;
|
|
height: 66rpx;
|
|
line-height: 66rpx;
|
|
font-size: 48rpx;
|
|
font-family: PingFang SC, PingFang SC-Heavy;
|
|
font-weight: 800;
|
|
text-align: center;
|
|
color: #333333;
|
|
width: 100%;
|
|
|
|
margin-bottom: 20rpx;
|
|
}
|
|
|
|
.a2 {
|
|
width: 100%;
|
|
height: 40rpx;
|
|
line-height: 40rpx;
|
|
font-size: 28rpx;
|
|
font-family: PingFang SC, PingFang SC-Regular;
|
|
font-weight: 400;
|
|
text-align: center;
|
|
color: #333333;
|
|
|
|
margin-bottom: 100rpx;
|
|
}
|
|
|
|
.a3 {
|
|
width: 148rpx;
|
|
height: 148rpx;
|
|
background: #51d0b4;
|
|
border-radius: 16px;
|
|
margin: 0 auto;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.a4 {
|
|
height: 40rpx;
|
|
font-size: 28rpx;
|
|
font-family: PingFang SC, PingFang SC-Regular;
|
|
font-weight: 400;
|
|
text-align: center;
|
|
color: #333333;
|
|
|
|
margin-top: 20rpx;
|
|
margin-bottom: 80rpx;
|
|
}
|
|
|
|
.a5 {
|
|
width: 568rpx;
|
|
height: 90rpx;
|
|
background: #51d0b4;
|
|
border-radius: 16rpx;
|
|
|
|
margin: 0 auto;
|
|
|
|
line-height: 90rpx;
|
|
font-size: 28rpx;
|
|
font-family: PingFang SC, PingFang SC-Regular;
|
|
font-weight: 400;
|
|
text-align: center;
|
|
color: #ffffff;
|
|
}
|
|
|
|
.a6 {
|
|
height: 34rpx;
|
|
font-size: 24rpx;
|
|
font-family: PingFang SC, PingFang SC-Medium;
|
|
font-weight: 500;
|
|
text-align: center;
|
|
color: #333333;
|
|
|
|
margin-top: 40rpx;
|
|
}
|
|
|
|
.a6 span {
|
|
color: #6FDFBE;
|
|
}
|
|
|
|
.a7 {
|
|
background-color: #6FDFBE;
|
|
width: 34rpx;
|
|
height: 34rpx;
|
|
line-height: 34rpx;
|
|
color: #fff;
|
|
border-radius: 50%;
|
|
display: inline-block;
|
|
}
|
|
</style>
|