pinia在nuxt3中配置持久化的问题

作者:linkyang
标签:
发布时间:2024年03月04日 21:54:14
更新时间:2025年03月04日 23:00:14

记录下在Nuxt3中配置pinia持久化时遇到的一些版本问题。

安装pinia

sh
npm i pinia @pinia/nuxt

安装持久化插件。

在当时安装插件时搜索到的文档都是说安装@pinia-plugin-persistedstate/nuxt这个插件,但是我在安装这个插件的时候遇到了版本冲突,报错如下:

图片

显示我的@pinia/nuxt版本为0.9.0不兼容@pinia-plugin-persistedstate/nuxt这个插件,所以得使用pinia-plugin-persistedstate这个插件。所以我们需要根据pinia的版本选择不同的插件。关于低版本的持久化插件不做过多描述,这里简单记录下高版本插件的使用:

sh
npm i pinia-plugin-persistedstate

在nuxt.config.ts文件中使用模块。

js
  modules: [
      //......
      '@pinia/nuxt', 'pinia-plugin-persistedstate/nuxt',
      //......
  ],

在defineStore中配置。

js
persist: {
    storage: piniaPluginPersistedstate.sessionStorage(),
    pick: ['activeNav']
},

使用piniaPluginPersistedstate变量来配置想持久化的方式,我这是是使用的sessionStorage,cookies和localStorage也是如此配置。

piniaPluginPersistedstate会自动导入,无需手动导入,直接在store中使用即可。更多使用方法以及详情请查看文档 :

登录后可查看并参与评论

Gitee 登录

目录导航

安装pinia
安装持久化插件。
在nuxt.config.ts文件中使用模块。
在defineStore中配置。