如何持久化存儲(chǔ)你的Pinia狀態(tài)
createPersistedState 是 Pinia 的一個(gè)插件,用于持久化存儲(chǔ)你的 Pinia 狀態(tài)(state),讓數(shù)據(jù)在頁(yè)面刷新或關(guān)閉后依然保留(通常存儲(chǔ)在 localStorage 或 sessionStorage)。
作用
- 讓用戶登錄信息、主題設(shè)置等在刷新頁(yè)面后不會(huì)丟失。
- 自動(dòng)把 Pinia 的 state 存到本地存儲(chǔ),再自動(dòng)恢復(fù)。
使用方法
- 安裝插件(如果沒(méi)裝):
npm install pinia-plugin-persistedstate
- 在 main.ts 里引入并注冊(cè):
import { createPinia } from 'pinia'
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
const pinia = createPinia()
pinia.use(piniaPluginPersistedstate)
app.use(pinia)- 在你的 store 里開(kāi)啟持久化:
export const useUserStore = defineStore('user', {
state: () => ({
username: '',
token: ''
}),
persist: true // 一行即可開(kāi)啟持久化
})結(jié)果
這樣你在 Pinia 里的數(shù)據(jù)就會(huì)自動(dòng)保存到 localStorage,刷新頁(yè)面后依然存在。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
前端在el-dialog中嵌套多個(gè)el-dialog代碼實(shí)現(xiàn)
最近使用vue+elementUI做項(xiàng)目,使用過(guò)程中很多地方會(huì)用到dialog這個(gè)組件,有好幾個(gè)地方用到了dialog的嵌套,下面這篇文章主要給大家介紹了關(guān)于前端在el-dialog中嵌套多個(gè)el-dialog代碼實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2024-01-01
基于Vue3和Canvas實(shí)現(xiàn)一個(gè)水印工具
在公眾號(hào)運(yùn)營(yíng)和內(nèi)容創(chuàng)作中,圖片版權(quán)保護(hù)是一個(gè)非常重要的問(wèn)題,今天我分享一個(gè)基于Vue3圖片水印添加的源碼和實(shí)現(xiàn)步驟,即使你是前端新手也能輕松掌握,需要的朋友可以參考下2025-10-10
vue+jsplumb實(shí)現(xiàn)工作流程圖的項(xiàng)目實(shí)踐
本文主要介紹了vue+jsplumb實(shí)現(xiàn)工作流程圖的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04
詳解解決Vue相同路由參數(shù)不同不會(huì)刷新的問(wèn)題
解決vue項(xiàng)目中遇到 Cannot find module ‘chalk‘ 報(bào)錯(cuò)的問(wèn)題
Vue項(xiàng)目中對(duì)index.html中BASE_URL的配置方式
詳解TypeScript+Vue 插件 vue-class-component的使用總結(jié)

