因为普通pinia在页面刷新时,会和vuex一样,state中的变量会被清空,所以就需要去做一下持久化操作,直接上步骤:
第一步:安装依赖包
npm i pinia-plugin-persist
第二步:在你的store文件夹中的index.ts文件中引入
第三步:在index.ts里给pinia配置
第四步:配置需要持久化的state数据
import { defineStore } from 'pinia';
export const dataSet = defineStore('data', {
state: () => ({
createDataObj: {},
}),
getters: {
},
actions: {
setobj(obj: object) {
this.createDataObj = obj
},
},
persist: {
enabled: true,//不写下面的strategies配置,则state中的变量全部持久化
strategies: [
{
// 自定义存储方式,默认sessionStorage
storage: sessionStorage,
// 指定要持久化的数据
paths: ['createDataObj']
}
]
}
});
第五步:用它!
完事~