存储
大约 1 分钟
状态管理
状态管理我们使用 Pinia,它是 Vue3 推荐使用的状态管理库。你不能随意的使用它们,要遵循一定的规则,首先你要了解 Pinia(状态管理)的命名规则
您现在已经了解了该如何命名,但还要注意一下几点:
- 子模块专用的状态管理需要放在模块目录下
正例:
src/module/sso/store/
- 全项目通用的状态管理放在
src/store
目录下 - 状态管理的 ID 统一维护在
/src/constant/store-id-consts.ts
中(为了防止 ID 重复) - 统一使用 Setup Store模式来定义
SessionStorage
在项目中 SessionStorage 是比较常用的一种存储方式,这里我们推荐使用 VueUse 中的 useSessionStorage,它会简化您的操作。
为了防止 SessionStorage 的 Key 冲突导致未知的问题,我们需要将全部的 Key 统一维护在 /src/constant/session-storage-key-consts.ts
中。
提示
SessionStorage 是本标签生效,在 index.html
写了复制到新标签页的方法,如果你也需要将值复制到新标签页,请将要复制的 key 添加到 copeKeys
数组中
LocalStorage
在项目中 LocalStorage 是比较常用的一种存储方式,这里我们推荐使用 VueUse 中的 useLocalStorage,它会简化您的操作。
为了防止 LocalStorage 的 Key 冲突导致未知的问题,我们需要将全部的 Key 统一维护在 /src/constant/local-storage-key-consts.ts
中。