pinia的使用

搭建pinia环境

pinia:集中式状态管理工具,用于各组件之间共享数据(多个组件会用到的数据才考虑放到pinia中)

在vue2中使用的是vuex

1.终端输入:npm i pinia

2.

在vue组件中出现pinia

用pinia存储+读取数据

要想好什么组件的什么数据要放入pinia,就是某个组件你希望哪些数据可以和别的组件共享

例:把Count.vue组件的sum、LoveTalk.vue组件的talkList放入pinia

1.在src文件夹下面创建store文件夹(store就是pinia的一个具体体现)

2.在store文件夹下面创建count.ts和loveTalk.ts文件

3.将想要存储到pinia中的数据写进去

3.在组件中导入对应的store并且删除已经放入store中的数据定义,使用store中的数据

4.在网页的pinia组件中就可以看到你创建的store

pinia修改数据的三种方式

修改方法3:当你在actions中添加判断函数之后,所有组件都可以使用这个判断函数,是一种优化,复用的思想

storeToRefs

之前学过toRefs,知道在解构一个响应式对象的一些属性时会让这些属性失去响应式,所以解构的时候要用toRefs包一下

直接解构出来数据就可以在引用数据时清爽一点

原本引用时要 countStore.sum....

解构出来:直接用数据名

但是不能用toRefs来将解构出来的数据变成ref定义的响应式数据,因为这样的话他会把store中的所有数据全部变成ref的,即使是没有用过的数据

要用storeToRefs,这样他只会把数据变成ref的,不会关注方法

相关推荐
__sgf__2 分钟前
ES8(ES2017)新特性
前端·javascript
__sgf__4 分钟前
ES9(ES2018)新特性
前端·javascript
送鱼的老默10 分钟前
学习笔记--vue3 watchEffect监听的各种姿势用法和总结
前端·vue.js
你挚爱的强哥10 分钟前
解决:动态文本和背景色一致导致文字看不清楚,用js获取背景图片主色调,并获取对比度最大的hex色值给文字
前端·javascript·github
用户693717500138418 分钟前
Android 手机终于能当电脑用了
android·前端
wooyoo19 分钟前
花了一周 vibe 了一个 OpenClaw 的 Agent 市场,聊聊过程中踩的坑
前端·后端·agent
angerdream22 分钟前
最新版vue3+TypeScript开发入门到实战教程之路由详解
前端·javascript·vue.js
送鱼的老默27 分钟前
学习笔记--vue3 watch监听的各种姿势用法和总结
前端·vue.js
猪八宅百炼成仙1 小时前
解决 el-date-picker type:daterange 在 layout 布局中的宽度问题
前端·element
Betelgeuse761 小时前
Django 项目远程服务器部署教程:从开发到生产
python·django·vue