diff --git a/src/pages/about/about.vue b/src/pages/about/about.vue
index f40d077..2c8f68d 100644
--- a/src/pages/about/about.vue
+++ b/src/pages/about/about.vue
@@ -30,6 +30,15 @@ function gotoLogin() {
url: `${LOGIN_PAGE}?redirect=${encodeURIComponent('/pages/about/about?a=1&b=2')}`,
})
}
+function logout() {
+ // 清空用户信息
+ tokenStore.logout()
+ // 执行退出登录逻辑
+ uni.showToast({
+ title: '退出登录成功',
+ icon: 'success',
+ })
+}
function gotoTabbar() {
uni.switchTab({
@@ -93,9 +102,17 @@ onShow(() => {
-
+
+ 当前是否登录:{{ tokenStore.hasLogin }}
+
+
+
+
+
diff --git a/src/service/user.ts b/src/service/user.ts
index 5653783..f3b2b78 100644
--- a/src/service/user.ts
+++ b/src/service/user.ts
@@ -119,7 +119,7 @@ export async function userCreateWithListUsingPost({
});
}
-/** Logs user into the system GET /user/login */
+/** Logs user into the system GET /auth/login */
export async function userLoginUsingGet({
params,
options,
@@ -128,7 +128,7 @@ export async function userLoginUsingGet({
params: API.userLoginUsingGetParams;
options?: CustomRequestOptions;
}) {
- return request('/user/login', {
+ return request('/auth/login', {
method: 'GET',
params: {
...params,
diff --git a/src/service/user.vuequery.ts b/src/service/user.vuequery.ts
index 658060a..6e5851f 100644
--- a/src/service/user.vuequery.ts
+++ b/src/service/user.vuequery.ts
@@ -122,7 +122,7 @@ export function useUserCreateWithListUsingPostMutation(options?: {
return response;
}
-/** Logs user into the system GET /user/login */
+/** Logs user into the system GET /auth/login */
export function userLoginUsingGetQueryOptions(options: {
// 叠加生成的Param类型 (非body参数openapi默认没有生成对象)
params: API.userLoginUsingGetParams;
diff --git a/src/store/token.ts b/src/store/token.ts
index 73f0c5f..1022d05 100644
--- a/src/store/token.ts
+++ b/src/store/token.ts
@@ -3,7 +3,6 @@ import { defineStore } from 'pinia'
import { computed, ref } from 'vue' // 修复:导入 computed
import {
login as _login,
- logout as _logout,
refreshToken as _refreshToken,
wxLogin as _wxLogin,
getWxCode,
@@ -155,18 +154,21 @@ export const useTokenStore = defineStore(
*/
const logout = async () => {
try {
- await _logout()
- // 清除存储的过期时间
- uni.removeStorageSync('accessTokenExpireTime')
- uni.removeStorageSync('refreshTokenExpireTime')
+ // TODO 实现自己的退出登录逻辑
+ // await _logout()
}
catch (error) {
console.error('退出登录失败:', error)
}
finally {
// 无论成功失败,都需要清除本地token信息
- const userStore = useUserStore()
- await userStore.removeUserInfo()
+ // 清除存储的过期时间
+ uni.removeStorageSync('accessTokenExpireTime')
+ uni.removeStorageSync('refreshTokenExpireTime')
+ console.log('退出登录-清除用户信息')
+ tokenInfo.value = { ...tokenInfoState }
+ uni.removeStorageSync('user')
+ uni.removeStorageSync('token')
}
}
@@ -221,6 +223,9 @@ export const useTokenStore = defineStore(
* 检查是否有登录信息(不考虑token是否过期)
*/
const hasLoginInfo = computed(() => {
+ if (!tokenInfo.value) {
+ return false
+ }
if (isDoubleTokenMode) {
return isDoubleTokenRes(tokenInfo.value) && !!tokenInfo.value.accessToken
}
@@ -233,6 +238,7 @@ export const useTokenStore = defineStore(
* 检查是否已登录且token有效
*/
const hasValidLogin = computed(() => {
+ console.log('hasValidLogin', hasLoginInfo.value, !isTokenExpired.value)
return hasLoginInfo.value && !isTokenExpired.value
})