状态管理
使用 Pinia 进行状态管理,采用组合式 API 风格编写 Store。
auth Store
const authStore = useAuthStore()
// State
authStore.token // JWT Token
authStore.refreshToken // 刷新 Token
authStore.userInfo // 用户信息
authStore.isLoggedIn // 是否已登录
// Actions
authStore.login(params) // 登录
authStore.logout() // 退出登录
authStore.refreshAccessToken() // 刷新 Tokenapp Store
const appStore = useAppStore()
// State
appStore.sidebarCollapsed // 侧边栏是否折叠
appStore.theme // 主题设置
appStore.device // 设备类型
appStore.language // 语言设置
// Actions
appStore.toggleSidebar() // 切换侧边栏
appStore.setTheme(theme) // 设置主题permission Store
const permissionStore = usePermissionStore()
// State
permissionStore.permissions // 权限列表
permissionStore.permissionCodes // 权限代码列表
// Actions
permissionStore.fetchPermissions() // 获取权限列表
permissionStore.hasPermissionCode(code) // 检查权限