SocialNetworks_duan/src/store/authentication/index.js
qumeng039@126.com 2a6f515100 1
2025-08-15 15:32:55 +08:00

33 lines
929 B
JavaScript

import { defineStore } from "pinia"
import { login, refreshToken } from "@/service/api/authentication"
import cache from "@/utils/cache"
import router from "@/router"
import { ElMessage } from "element-plus"
export const useLoginStore = defineStore("loginStore", {
state: () => ({
token: cache.getItem("token") ?? ""
}),
actions: {
setToken(accessToken) {
this.token = accessToken
cache.setItem("token", accessToken)
},
async loginForAccessToken(userInfo) {
const res = await login(userInfo)
if (res.code != 200) return
this.setToken(res.data.accessToken)
ElMessage.success("登录成功!")
router.push("/navigation")
},
async loginForRefreshToken() {
const res = await refreshToken()
if (res.code == 200) {
this.setToken(res.data.accessToken)
return true // 刷新成功
} else {
return false
}
}
}
})