如何持久化存储你的Pinia状态
作者:清风徐来QCQ
createPersistedState是Pinia插件,用于持久化存储状态数据,通过localStorage/sessionStorage实现页面刷新后数据保留,适用于登录信息、主题设置等场景,需在main.ts注册并配置store开启
createPersistedState
是 Pinia 的一个插件,用于持久化存储你的 Pinia 状态(state),让数据在页面刷新或关闭后依然保留(通常存储在 localStorage 或 sessionStorage)。
作用
- 让用户登录信息、主题设置等在刷新页面后不会丢失。
- 自动把 Pinia 的 state 存到本地存储,再自动恢复。
使用方法
- 安装插件(如果没装):
npm install pinia-plugin-persistedstate
- 在 main.ts 里引入并注册:
import { createPinia } from 'pinia' import piniaPluginPersistedstate from 'pinia-plugin-persistedstate' const pinia = createPinia() pinia.use(piniaPluginPersistedstate) app.use(pinia)
- 在你的 store 里开启持久化:
export const useUserStore = defineStore('user', { state: () => ({ username: '', token: '' }), persist: true // 一行即可开启持久化 })
结果
这样你在 Pinia 里的数据就会自动保存到 localStorage,刷新页面后依然存在。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。