|
@@ -1,33 +1,56 @@
|
|
|
<template>
|
|
|
<view class="container">
|
|
|
- <view class="login-btn">
|
|
|
- <u-button type="primary" open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">微信用户一键登录</u-button>
|
|
|
+ <u-image src="@/static/logo.png"></u-image>
|
|
|
+ <view class="login-btn-wrap">
|
|
|
+ <u-button shape="circle" type="primary" open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">微信用户一键登录</u-button>
|
|
|
+ <u-button shape="circle" :customStyle="{ 'margin-top': '20rpx' }">手机号登录/注册</u-button>
|
|
|
+ </view>
|
|
|
+ <view>
|
|
|
+ 我已阅读并同意
|
|
|
+ <text>《用户协议》</text>
|
|
|
+ <text>《隐私政策》</text>
|
|
|
</view>
|
|
|
</view>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import { getWxLoginCode, getOpenId } from '@/api/system.js';
|
|
|
+import { request } from '@/service';
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
appid: 'wx962bee9cb47b1696',
|
|
|
secret: '366ebb364f2180d59de5c42e25a453ea',
|
|
|
+ form: {
|
|
|
+ client_id: 'chelvc_client',
|
|
|
+ client_secret: 'qWBe6jD%GCuPPTkP',
|
|
|
+ grant_type: 'wechat',
|
|
|
+ token: '',
|
|
|
+ mobile: '',
|
|
|
+ },
|
|
|
};
|
|
|
},
|
|
|
methods: {
|
|
|
async getPhoneNumber(e) {
|
|
|
console.log(e);
|
|
|
// TODO: update appid and secret
|
|
|
- if (e.detail.errMsg != 'getPhoneNumber:ok') return uni.$u.toast('。。。');
|
|
|
- const { encryptedData, iv } = e.detail;
|
|
|
- const code = await getWxLoginCode();
|
|
|
- const { openid, session_key } = await getOpenId(this.appid, this.secret, code);
|
|
|
- // var pc = new WXBizDataCrypt(this.appid, session_key);
|
|
|
-
|
|
|
- // var data = pc.decryptData(encryptedData, iv);
|
|
|
-
|
|
|
- console.log('解密后 data: ', data);
|
|
|
+ if (e.detail.errMsg != 'getPhoneNumber:ok') return uni.$u.toast('请授权使用您的手机号');
|
|
|
+ this.form.mobile = e.detail.encryptedData;
|
|
|
+ this.form.token = await getWxLoginCode();
|
|
|
+ uni.getSystemInfoAsync({
|
|
|
+ success: res => {
|
|
|
+ console.log(res);
|
|
|
+ },
|
|
|
+ });
|
|
|
+ request({
|
|
|
+ url: '/uc/login',
|
|
|
+ method: 'post',
|
|
|
+ data: this.form,
|
|
|
+ header: {
|
|
|
+ 'Content-type': 'application/form-data',
|
|
|
+ },
|
|
|
+ loadingText: '登录中...',
|
|
|
+ });
|
|
|
},
|
|
|
},
|
|
|
};
|
|
@@ -35,15 +58,10 @@ export default {
|
|
|
|
|
|
<style scoped>
|
|
|
.container {
|
|
|
- height: 100vh;
|
|
|
- position: relative;
|
|
|
+ padding: 0 40rpx;
|
|
|
+ margin: 0 auto;
|
|
|
}
|
|
|
-.login-btn {
|
|
|
- padding: 0 20rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- position: absolute;
|
|
|
- top: 30%;
|
|
|
- left: 50%;
|
|
|
- transform: translate(-50%, -50%);
|
|
|
+.login-btn-wrap {
|
|
|
+ margin-top: 200rpx;
|
|
|
}
|
|
|
</style>
|