perf(我的)
This commit is contained in:
parent
bfe36ac0e8
commit
b58fe9df30
|
@ -14,9 +14,9 @@
|
|||
<view class="description ss-font-26">{{ userInfo.mobile }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view>
|
||||
<!-- <view>
|
||||
<text style="color: #fff; font-size: 20px" class="cicon-settings-o"></text>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
|
||||
<view class="statistic ss-m-t-24">
|
||||
|
@ -51,6 +51,7 @@
|
|||
|
||||
<script setup>
|
||||
import { ref, computed } from 'vue'
|
||||
import { onShow } from '@dcloudio/uni-app'
|
||||
import AuthUtil from '@/peach/api/member/auth'
|
||||
import peach from '@/peach'
|
||||
|
||||
|
@ -113,6 +114,9 @@ function logOut() {
|
|||
},
|
||||
})
|
||||
}
|
||||
onShow(() => {
|
||||
peach.$store('user').updateUserData()
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
@ -1,125 +1,126 @@
|
|||
import { ref } from "vue";
|
||||
import { defineStore } from "pinia";
|
||||
import $share from "@/peach/platform/share";
|
||||
import $router from "@/peach/router";
|
||||
import UserUtil from "@/peach/api/member/user";
|
||||
import { isEmpty, cloneDeep, clone } from "lodash";
|
||||
import { ref } from 'vue'
|
||||
import { defineStore } from 'pinia'
|
||||
import $share from '@/peach/platform/share'
|
||||
import $router from '@/peach/router'
|
||||
import UserUtil from '@/peach/api/member/user'
|
||||
import { isEmpty, cloneDeep, clone } from 'lodash'
|
||||
|
||||
// 默认用户信息
|
||||
const defaultUserInfo = {
|
||||
avatar: "", // 头像
|
||||
nickname: "", // 昵称
|
||||
mobile: "", // 手机号
|
||||
point: 0, // 积分
|
||||
particulars: null,
|
||||
};
|
||||
avatar: '', // 头像
|
||||
nickname: '', // 昵称
|
||||
mobile: '', // 手机号
|
||||
point: 0, // 积分
|
||||
particulars: null,
|
||||
}
|
||||
|
||||
// 默认钱包信息
|
||||
const defaultWallet = {
|
||||
balance: 0, // 余额
|
||||
totalExpense: 0, // 总消费
|
||||
totalRecharge: 0, // 总充值
|
||||
};
|
||||
balance: 0, // 余额
|
||||
totalExpense: 0, // 总消费
|
||||
totalRecharge: 0, // 总充值
|
||||
}
|
||||
|
||||
// 默认订单信息
|
||||
const defaultNumData = {
|
||||
unusedCouponCount: 0,
|
||||
orderCount: {
|
||||
allCount: 0,
|
||||
unpaidCount: 0,
|
||||
undeliveredCount: 0,
|
||||
deliveredCount: 0,
|
||||
uncommentedCount: 0,
|
||||
afterSaleCount: 0,
|
||||
},
|
||||
};
|
||||
unusedCouponCount: 0,
|
||||
orderCount: {
|
||||
allCount: 0,
|
||||
unpaidCount: 0,
|
||||
undeliveredCount: 0,
|
||||
deliveredCount: 0,
|
||||
uncommentedCount: 0,
|
||||
afterSaleCount: 0,
|
||||
},
|
||||
}
|
||||
|
||||
const useUserStore = defineStore(
|
||||
"user",
|
||||
() => {
|
||||
const userInfo = ref(cloneDeep(defaultUserInfo));
|
||||
const userWallet = ref(clone(defaultWallet));
|
||||
const userNumData = ref(cloneDeep(defaultNumData));
|
||||
const isLogin = ref(!!uni.getStorageSync("token"));
|
||||
const lastUpdateTime = ref(0);
|
||||
const lastRoutePage = ref(null);
|
||||
'user',
|
||||
() => {
|
||||
const userInfo = ref(cloneDeep(defaultUserInfo))
|
||||
const userWallet = ref(clone(defaultWallet))
|
||||
const userNumData = ref(cloneDeep(defaultNumData))
|
||||
const isLogin = ref(!!uni.getStorageSync('token'))
|
||||
const lastUpdateTime = ref(0)
|
||||
const lastRoutePage = ref(null)
|
||||
|
||||
async function getUserInfo() {
|
||||
let res = await UserUtil.getUserInfo();
|
||||
userInfo.value = res.data;
|
||||
}
|
||||
async function getUserInfo() {
|
||||
let res = await UserUtil.getUserInfo()
|
||||
userInfo.value = res.data
|
||||
}
|
||||
|
||||
async function getWallet() {
|
||||
let res = await UserUtil.getWalletInfo();
|
||||
userWallet.value = res.data;
|
||||
}
|
||||
async function getWallet() {
|
||||
let res = await UserUtil.getWalletInfo()
|
||||
userWallet.value = res.data
|
||||
}
|
||||
|
||||
function getNumData() {}
|
||||
function getNumData() {}
|
||||
|
||||
function setToken(token, refreshToken) {
|
||||
if (token === "") {
|
||||
isLogin.value = false;
|
||||
uni.removeStorageSync("token");
|
||||
uni.removeStorageSync("refresh-token");
|
||||
} else {
|
||||
isLogin.value = true;
|
||||
uni.setStorageSync("token", token);
|
||||
uni.setStorageSync("refresh-token", refreshToken);
|
||||
// 成功后处理
|
||||
loginAfter();
|
||||
}
|
||||
return isLogin.value;
|
||||
}
|
||||
function setToken(token, refreshToken) {
|
||||
if (token === '') {
|
||||
isLogin.value = false
|
||||
uni.removeStorageSync('token')
|
||||
uni.removeStorageSync('refresh-token')
|
||||
} else {
|
||||
isLogin.value = true
|
||||
uni.setStorageSync('token', token)
|
||||
uni.setStorageSync('refresh-token', refreshToken)
|
||||
// 成功后处理
|
||||
loginAfter()
|
||||
}
|
||||
return isLogin.value
|
||||
}
|
||||
|
||||
function resetUserData() {
|
||||
setToken("");
|
||||
userInfo.value = cloneDeep(defaultUserInfo);
|
||||
userWallet.value = clone(defaultWallet);
|
||||
userNumData.value = cloneDeep(defaultNumData);
|
||||
}
|
||||
function resetUserData() {
|
||||
setToken('')
|
||||
userInfo.value = cloneDeep(defaultUserInfo)
|
||||
userWallet.value = clone(defaultWallet)
|
||||
userNumData.value = cloneDeep(defaultNumData)
|
||||
}
|
||||
|
||||
async function updateUserData() {
|
||||
const nowTime = new Date().getTime();
|
||||
if (lastUpdateTime.value + 5000 > nowTime) {
|
||||
return;
|
||||
}
|
||||
lastUpdateTime.value = nowTime;
|
||||
await Promise.all([getUserInfo(), getWallet(), getNumData()]);
|
||||
return userInfo.value;
|
||||
}
|
||||
async function updateUserData() {
|
||||
const nowTime = new Date().getTime()
|
||||
if (lastUpdateTime.value + 5000 > nowTime) {
|
||||
return
|
||||
}
|
||||
lastUpdateTime.value = nowTime
|
||||
await Promise.all([getUserInfo(), getWallet(), getNumData()])
|
||||
return userInfo.value
|
||||
}
|
||||
|
||||
async function loginAfter() {
|
||||
await updateUserData();
|
||||
$share.getShareInfo();
|
||||
$router.go("/pages/index/index");
|
||||
}
|
||||
async function loginAfter() {
|
||||
await updateUserData()
|
||||
$share.getShareInfo()
|
||||
$router.go('/pages/index/index')
|
||||
}
|
||||
|
||||
function logOut() {
|
||||
resetUserData();
|
||||
return !isLogin.value;
|
||||
}
|
||||
function logOut() {
|
||||
resetUserData()
|
||||
return !isLogin.value
|
||||
}
|
||||
|
||||
return {
|
||||
userInfo,
|
||||
userWallet,
|
||||
isLogin,
|
||||
lastRoutePage,
|
||||
setToken,
|
||||
logOut,
|
||||
loginAfter,
|
||||
getWallet,
|
||||
};
|
||||
},
|
||||
{
|
||||
persist: {
|
||||
enabled: true,
|
||||
strategies: [
|
||||
{
|
||||
key: "user-store",
|
||||
},
|
||||
],
|
||||
return {
|
||||
userInfo,
|
||||
userWallet,
|
||||
isLogin,
|
||||
lastRoutePage,
|
||||
setToken,
|
||||
logOut,
|
||||
loginAfter,
|
||||
getWallet,
|
||||
updateUserData,
|
||||
}
|
||||
},
|
||||
}
|
||||
);
|
||||
{
|
||||
persist: {
|
||||
enabled: true,
|
||||
strategies: [
|
||||
{
|
||||
key: 'user-store',
|
||||
},
|
||||
],
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
export default useUserStore;
|
||||
export default useUserStore
|
||||
|
|
Loading…
Reference in New Issue