第二十八:5.5.【storeToRefs】5.6.【getters】
LoveTalk.vue: 调用:
// 方法
const talkStore = useTalkStore()
function getLoveTalk(){
talkStore.getATalk()
}
如果是要简短的形式调用:
const talkStore = useTalkStore() // user hooks 的形式调用
const {schoole,local} = talkStore // 通过这个方式调用
在页面就可以简单调用 不talkStore. schoole , 而是直接: schoole 的形式调用
因为 这样的不能动态调用响应式操作:最后执行:
/* 使用storeToRefs转换countStore,随后解构 */
注意:使用 storeToRefs 一定要引入:
import { storeToRefs } from "pinia";
const {schoole,local} = storeToRefs(talkStore)
LoveTalk.ts:
import {defineStore} from 'pinia'
import axios from 'axios'
import {nanoid} from 'nanoid'export const useTalkStore = defineStore('talk',{actions:{async getATalk(){// 发请求,下面这行的写法是:连续解构赋值+重命名let {data:{content:title}} = await axios.get('https://api.uomg.com/api/rand.qinghua?format=json')// 把请求回来的字符串,包装成一个对象let obj = {id:nanoid(),title}// 放到数组中this.talkList.unshift(obj)}},// 真正存储数据的地方state(){return {talkList:[{id:'ftrfasdf01',title:'今天你有点怪,哪里怪?怪好看的!'},{id:'ftrfasdf02',title:'草莓、蓝莓、蔓越莓,今天想我了没?'},{id:'ftrfasdf03',title:'心里给你留了一块地,我的死心塌地'}]}}
})
5.5.【storeToRefs】
-
借助
storeToRefs将store中的数据转为ref对象,方便在模板中使用。 -
注意:
pinia提供的storeToRefs只会将数据做转换,而Vue的toRefs会转换store中数据。
<template><div class="count"><h2>当前求和为:{{sum}}</h2></div>
</template>
<script setup lang="ts" name="Count">import { useCountStore } from '@/store/count'/* 引入storeToRefs */import { storeToRefs } from 'pinia'
/* 得到countStore */const countStore = useCountStore()/* 使用storeToRefs转换countStore,随后解构 */const {sum} = storeToRefs(countStore)
</script>
5.6.【getters】


5.6.【getters】
-
概念:当
state中的数据,需要经过处理后再使用时,可以使用getters配置。 -
追加
getters配置。// 引入defineStore用于创建store import {defineStore} from 'pinia' // 定义并暴露一个store export const useCountStore = defineStore('count',{// 动作actions:{/************/},// 状态state(){return {sum:1,school:'atguigu'}}, // 计算getters:{bigSum:(state):number => state.sum *10,upperSchool():string{return this. school.toUpperCase()}} }) -
组件中读取数据:
const {increment,decrement} = countStore let {sum,school,bigSum,upperSchool} = storeToRefs(countStore)
相关文章:
第二十八:5.5.【storeToRefs】5.6.【getters】
LoveTalk.vue: 调用: // 方法 const talkStore useTalkStore() function getLoveTalk(){ talkStore.getATalk() } 如果是要简短的形式调用: const talkStore useTalkStore() // user hooks 的形式调用 const {schoole,local} talkStore // …...
APISIX Dashboard上的配置操作
文章目录 登录配置路由配置消费者创建后端服务项目配置上游再创建一个路由测试 登录 http://192.168.10.101:9000/user/login?redirect%2Fdashboard 根据docker 容器里的指定端口: 配置路由 通过apisix 的API管理接口来创建(此路由,直接…...
MinIO在 Docker中修改登录账号和密码
MinIO在 Docker中修改登录账号和密码 随着云计算和大数据技术的快速发展,对象存储服务逐渐成为企业数据管理的重要组成部分。MinIO 作为一种高性能、分布式的对象存储系统,因其简单易用、高效可靠的特点而备受开发者青睐。然而,在实际应用中…...
英文论文查重,Turnitin和IThenticate两个系统哪个更合适?
Turnitin系统和IThenticate系统都是检测英文论文的查重系统,但是两者之间还是有一些不一样的。 下面针对这两个系统给大家具体分析一下。 一、Turnitin系统 Turnitin检测系统: https://truth-turnitin.similarity-check.com Turnitin是世界上主流的…...
pnpm的基本用法
以下是 pnpm 的核心命令和使用指南,涵盖从安装依赖到项目管理的常见操作: 1. 基础命令 (1) 安装依赖 pnpm install # 安装 package.json 中的所有依赖 pnpm install <包名> # 安装指定包(自动添加到 dependencies…...
【实战中提升自己】防火墙篇之双ISP切换与VRRP切换对于用户的体验
! 拓扑与说明 某公司的网络架构,这样的架构在目前的网络中是在常见的,假设您接收一个这样的网络,应该如何部署,该实战系列,就是一步一步讲解,如何规划、设计、部署这样一个环境,这…...
Go在1.22版本修复for循环陷阱
记录 前段时间升级Go版本碰到一个大坑,先记录。 先上代码案例: func main() {testClosure() }func testClosure() {for i : 0; i < 5; i {defer func() {fmt.Println(i)}()} }在1.22之下(不包括1.22)版本: 输出的…...
Nginx+PHP+MYSQL-Ubuntu在线安装
在 Ubuntu 上配置 Nginx、PHP 和 MySQL 的步骤如下: 1. 更新系统包 首先,确保系统包是最新的: sudo apt update sudo apt upgrade2. 安装 Nginx 安装 Nginx: sudo apt install nginx启动并启用 Nginx 服务: sudo…...
SpringDataJPA使用deleteAllInBatch方法逻辑删除失效
概述 在使用Spring Boot JPA时,执行批量删除操作时,遇到逻辑删除失效的问题。具体而言,当使用deleteAllInBatch方法时,数据会被物理删除,而不是进行逻辑删除;但是当使用deleteAll时,逻辑删除操…...
DOM Node
DOM Node 引言 在Web开发中,DOM(Document Object Model)节点是构建网页和交互式应用程序的核心。DOM节点是文档的构建块,可以用来表示HTML和XML文档中的任何部分。本文将详细介绍DOM节点的基本概念、类型、操作方法以及在实际开发中的应用。 什么是DOM节点? DOM节点是…...
基于STM32的智能家居能源管理系统
1. 引言 传统家庭能源管理存在能耗监控粗放、设备联动不足等问题,难以适应绿色低碳发展需求。本文设计了一款基于STM32的智能家居能源管理系统,通过多源能耗监测、负荷预测与优化调度技术,实现家庭能源的精细化管理与智能优化,提…...
智慧园区后勤单位消防安全管理:安全运营和安全巡检
//智慧园区消防管理困境大曝光 智慧园区,听起来高大上,但消防管理却让人头疼不已。各消防子系统各自为政,像一座座孤岛,信息不共享、不协同。 消防设施管理分散,不同区域、企业的设备标准不一样,维护情况…...
HTML 日常开发常用标签
文章目录 HTML 日常开发常用标签1、基本结构标签2、内容标签3、多媒体标签4、表单标签5、列表和定义标签6、表格标签7、链接和图像8、元数据9、语义化标签(HTML5新增)10、框架和内联11、交互12、过时或不推荐使用的标签 HTML 日常开发常用标签 1、基本结…...
Spring事务失效六大场景
引言 Spring事务一般我们采用注解实现,但是我们构造事务实现的时候常常没察觉失效的情况,本篇文章总结事务失效的六大情况,帮助我们深刻理解事务失效的边界概念 1. 方法自调用 这个主要是针对声明式事务的,经过前面的介绍&…...
【缓冲区】数据库备份的衍生问题,缓冲区在哪里?JVMor操作系统?(二)
【缓冲区】数据库备份的衍生问题,缓冲区在哪里?JVMor操作系统?(二 完结) 缓冲区既属于操作系统,也属于 JVM,具体取决于你讨论的是哪个层面的缓冲区。下面我会详细解释这两者的区别和联系。 1. …...
如何免费使用稳定的deepseek
0、背景: 在AI辅助工作中,除了使用cursor做编程外,使用deepseek R1进行问题分析、数据分析、代码分析效果非常好。现在我经常会去拿行业信息、遇到的问题等去咨询R1,也给了自己不少启示。但是由于官网稳定性很差,很多…...
钉钉小程序(企业内部应用)开发--钉钉小程序web-view嵌套H5与小程序之间的通信(H5跳转钉钉小程序小程序postMessage)
钉钉小程序代码:嵌套H5 pages/login/index.axml <web-view src"{{urlH5}}" onMessage"test"></web-view> H5向小程序发送信息: H5代码: 通过以下代码我一直报错dd没有被定义 if (navigator.userAgent.to…...
超级免费/牛的图片格式转换工具jpg/jpeg/png
选择多次图片文件,并在所有图片选择完后进行批量转换。这种需求可以通过tkinter来实现,它是Python的标准GUI库,能够提供一个简洁的界面来选择文件和执行操作。您的代码要是网络运行不流畅可以试试它 下面是一个简单的GUI程序&a…...
毛泽东思想“活的灵魂”
关于毛泽东思想“活的灵魂”的构成及其内涵,综合历史文献与权威表述,核心内容整理如下: 一、毛泽东思想活的灵魂的权威定义 根据十一届六中全会《关于建国以来党的若干历史问题的决议》(1981年),毛泽东思想…...
RabbitMQ系列(三)基本概念之Consumer
在 RabbitMQ 中,Consumer(消费者) 是负责从队列(Queue)中获取并处理消息的客户端角色,其核心机制与功能如下: 一、Consumer 的定义与核心作用 消息处理终端 Consumer 通过订阅或拉取队列中的消…...
Phi-3-mini-128k-instruct对比测试:与主流轻量模型性能横评
Phi-3-mini-128k-instruct对比测试:与主流轻量模型性能横评 最近轻量级大模型的热度一直没降下来,各家都在推出自己的“小钢炮”。微软前段时间发布的Phi-3-mini系列,尤其是那个128k超长上下文版本,吸引了不少眼球。参数不大&…...
忍者像素绘卷基础教程:云端画布背景CSS定制+像素格底纹参数调整
忍者像素绘卷基础教程:云端画布背景CSS定制像素格底纹参数调整 1. 工具介绍与准备工作 忍者像素绘卷是一款专为像素艺术创作优化的图像生成工具,基于Z-Image-Turbo技术深度开发。它融合了16-bit复古游戏美学与现代AI生成能力,为创作者提供了…...
专业CAD数据处理指南:如何高效使用开源DWG转换工具LibreDWG
专业CAD数据处理指南:如何高效使用开源DWG转换工具LibreDWG 【免费下载链接】libredwg Official mirror of libredwg. With CI hooks and nightly releases. PRs ok 项目地址: https://gitcode.com/gh_mirrors/li/libredwg LibreDWG是一款强大的开源CAD文件处…...
5个实战技巧解决ComfyUI ControlNet Aux预处理器的模型管理难题
5个实战技巧解决ComfyUI ControlNet Aux预处理器的模型管理难题 【免费下载链接】comfyui_controlnet_aux ComfyUIs ControlNet Auxiliary Preprocessors 项目地址: https://gitcode.com/gh_mirrors/co/comfyui_controlnet_aux 在AI绘画工作流中,ComfyUI Con…...
Arduino实战:如何用旋转编码器控制你的项目(附方向判断代码)
Arduino实战:旋转编码器方向判断与项目集成指南 引言 在创客和电子爱好者的世界里,旋转编码器就像是一个神奇的"旋钮",它能把你的物理转动动作转化为数字信号。想象一下,通过简单的旋转就能精确控制音量大小、菜单选择…...
STM32串口玩转SYN6288语音合成:从CubeMX配置到中文播报避坑指南
STM32与SYN6288语音合成实战:从硬件对接到中文播报全流程解析 在智能家居和物联网设备快速发展的今天,语音交互已成为提升用户体验的重要方式。对于嵌入式开发者而言,如何在资源有限的微控制器上实现高质量的语音输出是一个常见需求。SYN6288…...
JS 字符串截取:substr vs substring 的实战对比与记忆技巧
1. 为什么我们需要区分 substr 和 substring? 在日常的 JavaScript 开发中,字符串操作是最基础也是最频繁的需求之一。很多开发者都遇到过这样的困惑:当需要截取字符串时,到底该用 substr 还是 substring?这两个方法看…...
B站视频下载器:三步教你保存任何想看的B站视频到本地
B站视频下载器:三步教你保存任何想看的B站视频到本地 【免费下载链接】bilibili-downloader B站视频下载,支持下载大会员清晰度4K,持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 你是否曾遇到过这样的…...
Tusky测试策略分析:单元测试与集成测试在Android应用中的实践
Tusky测试策略分析:单元测试与集成测试在Android应用中的实践 【免费下载链接】Tusky An Android client for the microblogging server Mastodon 项目地址: https://gitcode.com/gh_mirrors/tu/Tusky Tusky作为一款流行的Mastodon Android客户端,…...
Node.js后端服务开发:调用cv_resnet101人脸检测API的实战教程
Node.js后端服务开发:调用cv_resnet101人脸检测API的实战教程 你是不是也遇到过这样的场景?手头有一个功能强大的AI模型,比如一个能精准识别人脸的cv_resnet101模型,它部署在某个GPU平台上,接口已经准备好了。但你的应…...
