1
0
mirror of https://github.com/zclzone/vue-naive-admin.git synced 2026-01-23 08:00:22 +08:00
This commit is contained in:
zclzone
2023-12-07 21:55:23 +08:00
commit cfeb813b62
401 changed files with 11125 additions and 0 deletions

54
src/store/modules/auth.js Normal file
View File

@@ -0,0 +1,54 @@
/**********************************
* @Author: Ronnie Zhang
* @LastEditor: Ronnie Zhang
* @LastEditTime: 2023/12/05 21:25:39
* @Email: zclzone@outlook.com
* Copyright © 2023 Ronnie Zhang(大脸怪) | https://isme.top
**********************************/
import { defineStore } from 'pinia'
import { useUserStore, usePermissionStore, useTabStore } from '@/store'
import { resetRouter, router } from '@/router'
export const useAuthStore = defineStore('auth', {
state: () => ({
accessToken: undefined,
}),
actions: {
setToken({ accessToken }) {
this.accessToken = accessToken
},
resetToken() {
this.$reset()
},
toLogin() {
const currentRoute = unref(router.currentRoute)
router.replace({
path: '/login',
query: currentRoute.query,
})
},
resetLoginState() {
const { resetUser } = useUserStore()
const { resetPermission } = usePermissionStore()
const { resetTabs } = useTabStore()
// 重置用户
resetUser()
// 重置权限
resetPermission()
// 重置Tabs
resetTabs()
// 重置路由
resetRouter()
// 重置token
this.resetToken()
},
async logout() {
this.resetLoginState()
this.toLogin()
},
},
persist: {
key: 'vue-naivue-admin_auth',
},
})