no message

SPY×FAMILY
鹿和sa0ChunLuyu 4 years ago
parent 59e649bd8a
commit 6f64fd94f6

@ -1,5 +1,7 @@
const url_ = "http://lhc.pi.sa0.online:81";
const url_ = "http://ld.win.sa0.online:81";
let url_array = {};
url_array['微信登录'] = `${url_}/api/mp/login`;
url_array['用户信息'] = `${url_}/api/mp/get_info`;
url_array['YO'] = `${url_}/api/yo`;
const api = (mark) => {
if (mark === '') return url_;

@ -1,8 +1,46 @@
import $post from "../lu/post.js"
import $res from "../lu/response.js"
import $api from "./api.js"
export function yo(then) {
import {
delToken
} from '../tool/member.js'
export function userLoginAction(code, then) {
$post({
url: $api('微信登录'),
data: {
code
},
then: (response) => {
$res({
response,
then: (response) => {
then(response.data.token)
},
error: (res) => {
uni.$lu.toast(res.message);
}
})
}
})
}
export function getUserInfoAction(then, msg = true) {
$post({
url: $api('用户信息'),
then: (response) => {
$res({
response,
then: (response) => {
then(response.data)
},
error: (res) => {
delToken()
if (msg) uni.$lu.toast(res.message);
}
})
}
})
}
export function yo(then) {
$post({
url: $api('YO'),
then: (response) => {

@ -7,21 +7,44 @@
import {
ref
} from 'vue'
import {
getUserInfoAction
} from '@/api/index.js'
const mask_show = ref(true)
const login_show = ref(true)
import {
onShow
} from '@dcloudio/uni-app'
onShow(() => {
getUserInfo()
})
const toLogin = () => {
uni.navigateTo({
url: '/pages/main/login/login'
})
}
const getUserInfo = () => {
login_show.value = true
mask_show.value = true
getUserInfoAction((info) => {
login_show.value = false
mask_show.value = false
}, false)
}
defineExpose({
getUserInfo
})
</script>
<template>
<view v-if="login_show">
<u-mask :show="mask_show" @click="toLogin()"></u-mask>
<u-mask :custom-style="{
opacity: 0
}" :show="!mask_show" @click="mask_show = true"></u-mask>
}" :show="mask_show" @click="toLogin()"></u-mask>
</view>
</template>
<style scoped>

@ -1,4 +1,4 @@
import m from '../tool/member.js';
import {getToken} from '../tool/member.js';
const post = (e) => {
if (typeof e.url === 'undefined') return console.error({
'data': {
@ -11,7 +11,7 @@ const post = (e) => {
let done = typeof e.done === 'undefined' ? response => console.log(response) : e.done;
let then = typeof e.then === 'undefined' ? response => console.log(response) : e.then;
let error = typeof e.error === 'undefined' ? err => console.log(err) : e.error;
let token = m.getToken() ? m.getToken() : '';
let token = getToken() ? getToken() : '';
data.SYSTEM_TYPE = 'WMP';
let header = typeof e.header === 'undefined' ? {
'content-type': 'application/json',

@ -11,7 +11,7 @@
const user_code_show = ref(false)
const wxGetUserInfo = (res) => {
if (!res.detail.iv) {
this.$sa0.toast("您取消了授权,登录失败");
uni.$lu.toast("您取消了授权,登录失败");
return false;
}
uni.login({

@ -20,6 +20,7 @@
}
</script>
<template>
<Login></Login>
<view class="home_wrapper u-text-center">
<view class="home_logo_wrapper">
<u-image width="200rpx" height="200rpx" src="/static/logo.png"></u-image>

@ -2,11 +2,70 @@
/**
* name
* usersa0ChunLuyu
* date2022-04-22 22:29:07
* date2022-04-20 09:02:17
*/
import {
ref
} from 'vue'
import {
userLoginAction
} from '@/api/index.js'
import {
setToken
} from '@/tool/member.js'
import config from '@/config.js'
const wxGetUserInfo = (res) => {
if (!res.detail.iv) {
uni.$lu.toast("您取消了授权,登录失败");
return false;
}
uni.login({
provider: 'weixin',
success: (loginRes) => {
userLoginAction(loginRes.code, (token) => {
setToken(token)
uni.switchTab({
url: '/pages/main/user/user'
})
})
},
});
}
</script>
<template>
Login
<template>
<view class="home_wrapper u-text-center">
<view class="home_logo_wrapper">
<u-image width="200rpx" height="200rpx" src="/static/logo.png"></u-image>
</view>
<view class="home_title_wrapper">{{ config.title }}</view>
<button class="open_type_button_wrapper" open-type="getUserInfo" @getuserinfo="wxGetUserInfo"
withCredentials="true">微信登录</button>
</view>
</template>
<style scoped>
.home_title_wrapper {
margin: 10rpx 0;
}
.home_logo_wrapper {
width: 200rpx;
height: 200rpx;
margin: 0 auto;
}
.home_wrapper {
position: absolute;
top: 30%;
left: 50%;
transform: translate(-50%, -50%);
}
.open_type_button_wrapper {
margin-top: 30rpx;
width: 500rpx;
height: 80rpx;
line-height: 80rpx;
font-size: 26rpx;
}
</style>

@ -8,17 +8,35 @@
ref
} from 'vue'
import config from '@/config.js'
import {
delToken
} from '@/tool/member.js'
const login_ref = ref(null)
const loginRef = (e) => {
login_ref.value = e
}
const quitClick = () => {
delToken()
login_ref.value.getUserInfo()
}
</script>
<template>
<Login ></Login>
<template>
<Login :ref="loginRef"></Login>
<view class="home_wrapper u-text-center">
<view class="home_logo_wrapper">
<u-image width="200rpx" height="200rpx" src="/static/logo.png"></u-image>
</view>
<view class="home_title_wrapper">{{ config.title }}</view>
<view class="quit_button_wrapper">
<u-button @click="quitClick()">退</u-button>
</view>
</view>
</template>
<style scoped>
.quit_button_wrapper {
margin-top: 30rpx;
}
.home_title_wrapper {
margin: 10rpx 0;
}

@ -1,16 +1,10 @@
const TokenKey = 'Token';
const getToken = () => {
return uni.getStorageSync(TokenKey);
const TokenKey = 'Token';
export function getToken() {
return uni.getStorageSync(TokenKey);
}
export function setToken(token) {
uni.setStorageSync(TokenKey, token);
}
export function delToken() {
uni.removeStorageSync(TokenKey);
}
const setToken = (token) => {
uni.setStorageSync(TokenKey, token);
}
const delToken = () => {
uni.removeStorageSync(TokenKey);
}
export default {
TokenKey,
setToken,
getToken,
delToken
};

Loading…
Cancel
Save