问题

pinia的存储是基于内存的,刷新之后就会丢失,vue项目为了保持登录状态,需要做到刷新不丢失。比如token数据。

实现

适用于pinia的持久化存储插件:pinia-plugin-persistedstate

运行机制

在设置state的时候会自动把数据同步给localStorage, 在获取state数据的时候会优先从localStorage中取

1. 安装插件 npm i pinia-plugin-persistedstate

2. 在 main.js 中引入插件

import { createPinia } from 'pinia'
import { createPersistedState } from 'pinia-plugin-persistedstate'

const pinia = createPinia()// 注册持久化插件
pinia.use(createPersistedState())

在这里插入图片描述

3. 在 pinia 中使用插件

{ persist: true }

在这里插入图片描述

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐