Nuxt3之pinia持久化配置

Nuxt3 配置pinia首选要在 Nuxt3 项目中安装pinia

Nuxt3官方pinia模块安装链接

直接在项目终端下输入 npm 命令
npm i pinia @pinia/nuxt // pinia:
npm i -D @pinia-plugin-persistedstate/nuxt // pinia-plugin-persistedstate
如果你是使用pnpm 或者 yarm 等其他npm工具,直接替换 npm 即可

安装好pinia后,就要配置 nuxt.config

在modules中注册 pinia/nuxt 及 pinia-plugin-persistedstate/nuxt

export default defineNuxtConfig({// devtools: { enabled: false },ssr: true,routeRules: {}, // 对指定页面设置规则app: {// 设置网页title小图标head: {link: [{ rel: "icon", type: "image/png", href: "/favicon.png" }],},},modules: [// 注册模块"@pinia/nuxt","@pinia-plugin-persistedstate/nuxt",],css: [],//引入css全局文件devServer: {// 开启局域网host: "0.0.0.0",},// 运行时常量runtimeConfig: {// 类似isServer自定义的普通变量只能在服务端拿到isServer: true,// public 内的变量 服务端 和 客户端 都能拿到public: {baseUrl: process.env.VITE_SERVER_NAME,},},
});

在 composables 中创建 store.js

// 网上有很多版本在nuxt.config内使用自动引入defineStore ,我是失败的,按以下手动引入是成功的
import { defineStore } from 'pinia'
// 这里是安装了zipson 用来序列化 缓存 pinia 对象内容,便于阅读
// npm install zipson // zipson 不需要在config中注册,直接使用即可
import {parse,stringify
} from 'zipson'
export const useTestStore = defineStore('testStore', () => {const number = ref(0)return {number}
}, {persist: {storage: {getItem(key) {return window.localStorage.getItem(key)},setItem(key, value) {window.localStorage.setItem(key, value)},},serializer: {deserialize: parse,serialize: stringify,}}
})

在页面上的使用

const testStore = useTestStore()
console.log(testStore.number)
// 亲测有效,默认是localStore缓存,可以自行配置pinia的其他缓存形式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/52597.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot3.x入门系列【5】支持unix sock 套接字服务

目录 一、简介 二、springBoot3.x 套接字的支持 1. 环境要求 2. springboot内置tomcat 2.1 支持unix 设置 unixDomainSocketPath 2.2 windows 下unix服务测试 3. springboot外置tomcat 3.1 tomcat 配置unix socket 套接字 3.2 启动tomcat 服务 3.3 nginx 支持unix…

SLAM学习笔记

从《slam十四讲开始》 slam十四讲推荐的其他书籍 《概率机器人》(Probabilistic robotics ) 《计算机视觉中的多视图几何》(Multiple View Geometry in Computer Vision ) 《机器人学中的状态估计》(State Estimation…

操作系统

操作系统是控制和管理计算机硬件和软件资源。 管理和控制电脑系统软硬件资源的软件叫作操作系统,操作系统是最基本、最重要的系统软件,由一组控制计算机系统并对计算机系统进行管理的程序组成,是用户与计算机硬件系统的接口,并为用…

VMware网络模式

一.VMware虚拟网络 VMware支持共创建20个虚拟网络,相当于现实生活的交换机,名称vmnet0---vmnet19 物理机用虚拟网卡和对应的虚拟网络中的虚拟机通信。 VMnet1和VMnet8这两个虚拟网卡的作用是保证windows和虚拟机可以正常通信。VMware Workstation Pro这…

python-读写Excel:xlwings库操作

几种操作Excel的python库对比 安装:pip install xlwings 目录 APP实例化对象 工作薄对象 创建工作薄 打开工作薄 工作薄属性 工作表对象 新增工作表 复制表 获取工作表对象 工作表属性 删除和清除表数据及表格式 工作表行高列宽(自动调整) 单元格对象 获取单元…

GPS北斗授时服务器(网络时钟系统)助力金融领域

GPS北斗授时服务器(网络时钟系统)助力金融领域 GPS北斗授时服务器(网络时钟系统)助力金融领域 摘 要:首先对计算机网络时间同步相关技术进行了介绍,然后阐述了时间同步技术在现代计算机网络中的应用与发展,最后指出时间同步网络在…

Effective Java 学习笔记--36-38条 枚举类型

目录 枚举之前--int常量 枚举类型 枚举类型的特性 自定义方法和域的设置 实例的统一行为 实例的不同行为 switch语句 抽象方法 公共接口 策略枚举 用实例域代替默认序数 枚举集合 EnumSet EnumMap 枚举类型用于定义一组固定的命名常量,在枚举类型中定…

秋冬春夏,纪念在CSDN的第365天

目录 时光 收获 工作 生活 憧憬 时光 再次收到创作纪念日的消息时,已在CSDN创作和度过了一年的时光。创作,成了自己的第二工作空间,成为了日常的一种习惯。 每当看到第1篇文章的提醒消息,都会想起当时创作的初衷和情景。是一…

在手机在线预览3D模型,是如何实现的?

在手机在线预览3D模型,主要依赖于几个关键技术和步骤来实现。以下是一个概括性的流程: 一、模型上传 选择平台:首先,用户需要选择一个支持3D模型在线预览的平台,如51建模网、Sketchfab等。这些平台通常提供用户友好的…

五分钟本地部署Uptime Kuma运维监控结合内网穿透实现远程访问

文章目录 前言**主要功能**一、前期准备本教程环境为:Centos7,可以跑Docker的系统都可以使用本教程安装。本教程使用Docker部署服务,如何安装Docker详见: 二、Docker部署Uptime Kuma三、实现公网查看网站监控四、使用固定公网地址…

Kafka的生产者和消费者机制

目录 1.基础的客户端 1.1消息发送者的主流程 1.2消息消费者主流程 2.客户端工作机制 2.1消费者分组消费机制 2.2生产者拦截器机制 2.3消息序列化机制 2.4消息分区路由机制 2.5生产者消息缓存机制 2.6发送应答机制 2.7生产者消息幂等性 (1)生产者消息幂等性介绍 (2…

XDMA原理

目录 1. BAR Space Map2. PCIe to AXI Lite Master2.1. BAR Address to AXI Address 3. PCIe to DMA Bypass4. AXI4 Memory Mapped4.1. Register Space 5. AXI Lite Slave Configuration Interface6. MSI/MSI-X Interrupt6.1. Interrupts Configuration6.2. IRQ Module 7. IP E…

CentOS 7 更换为国内YUM源详细教程

CentOS 7 将 yum 源更换为国内源的保姆级教程如下,这个过程包括备份原有源、下载国内源、清理缓存、生成新缓存以及验证更换效果等步骤。 一、备份原有源 在更换 yum 源之前,建议先备份原有的 yum 源配置文件,以防万一更换后出现问题需要恢…

Gitlab迁移到新的服务器后点击Integrations报500错误的解决方法

目录 一、问题描述二、解决方法1.方法12.方法2(1)备份 /etc/gitlab/gitlab-secrets.json(2)进入数据库(3)查看 Project ID(4)查找 hook ID 并删除(5)申请访问令牌并执行 api 删除操作一、问题描述 Gitlab迁移到新的服务器后点击Integrations报500错误: 查后台日志…

Linux - 深入探讨 Linux `ls` 命令:一个全面的技术指南

作者:逍遥Sean 简介:一个主修Java的Web网站\游戏服务器后端开发者 主页:https://blog.csdn.net/Ureliable 觉得博主文章不错的话,可以三连支持一下~ 如有疑问和建议,请私信或评论留言! 前言 在 Linux 系统中…

打卡57天------图论(两种算法)

最近的算法题都太高深莫测了,对于一个前端工程师来说,要求没有那么严吧。 今天在学习prim 和 kruskal的同时,也要清楚这两个算法的区别所在。 一、prim算法精讲 代码随想录 无JS官方题解代码。 二、kruskal算法精讲 代码随想录 无JS官方题解…

前后端开发学习路线 囊括Dubbo、Elasticsearch等

以下都是博主本人看过后给出的推荐。 文章目录 前端入门Web开发基础(HTML、CSS、JS)写项目前置(AJAX、Vue等)开始写项目(Vue、Uniapp)重点Future 入门Java后端基础部分(Java、MySQL)…

kubectl陈述式资源管理方式、声明式资源管理

一、命令行: kubectl命令行工具 优点: 90%以上的场景都可以满足 对资源的增,删,查比较方便,对改不是很友好 缺点:命令比较冗长,复杂难记 声明方式:k8s当中的yaml文件实现资源管理----声明式 GUI:图形化工具的管理…

【终端IDPS】开源安全平台Wazuh之Wazuh Server

引言 Wazuh是一个开源的、免费的企业级安全监控解决方案,专注于威胁检测、完整性监控、事件响应和合规性。它由部署在受监控系统的端点安全代理和管理服务器组成,服务器收集并分析代理收集的数据。Wazuh支持多平台,包括Windows、Linux、macOS…

VLM 系列——Mini-Monkey——论文解读

一、概述 1、是什么 Mini-Monkey 论文全称《Mini-Monkey: Multi-Scale Adaptive Cropping for Multimodal Large Language Models》,是一个轻量级MLLM(多模态的视觉-文本模型),基于InternViT、MLP和InternLLM,其实就是…