Files
easygoadmin-wiki/EasyGoAdmin_GoFrame_AntdVue/zh/appendix/stores.md
T
2026-10-20 21:53:26 +08:00

47 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# H. 前端 Store 速查
:::tip 概述
Pinia store 模块速查(store/modules/ 七个):user/asyncRoute/tabsView/designSetting/projectSetting/lockscreen/ossConfig。详见 [9.6 状态管理(Pinia)](../frontend/store)。
:::
## 模块速查
| 模块 | 职责 | 关键状态/动作 |
|------|------|-------------|
| user.ts | 登录与身份 | token、userInfo;Login/GetInfo/LogOut |
| asyncRoute.ts | 动态路由 | 菜单树、generateRoutes、isDynamicAddedRoute |
| tabsView.ts | 标签页 | visitedTabs、cachedTabs、delCachedTab |
| designSetting.ts | 设计设置 | 主题色、水印、灰度/色弱 |
| projectSetting.ts | 项目设置 | 布局模式、标签页/面包屑开关 |
| lockscreen.ts | 锁屏 | 锁定状态、解锁 |
| ossConfig.ts | 存储配置 | OSS 配置状态 |
## 辅助文件
```text
store/index.ts createPinia(含持久化插件)
store/mutation-types.ts 存储键常量(ACCESS_TOKEN / FIRST_ROUTE)
store/types.ts 类型定义
store/plugins/ 持久化等插件
```
## 关键流转
```text
登录:Login → data.access_token → storage(ACCESS_TOKEN) + store.token
首进:守卫 → GetInfo(getUser)→ userInfo.permissions
→ generateRoutes(getMenus)→ 动态路由注入
登出/401:清 storage + store → 跳登录
持久化:token/用户设置持久化;用户信息/菜单内存态(刷新重拉)
```
## 使用模式
```ts
import { useUserStore, useUserStoreWidthOut } from '@/store/modules/user';
const userStore = useUserStore(); // setup 内
const token = userStore.token;
```