欢迎光临散文网 会员登陆 & 注册

快速了解并使用pinia

2022-10-30 10:46 作者:doubleyong  | 我要投稿

vue3 配套推荐了pinia插件来替换了之前的vuex ,

本文将介绍pinia,让你快速了解并使用pinia



0 1 

pinia介绍 


读音:  pí ní yà      皮 尼 亚

vuex的代替产品,尤大大也是强烈推荐

官网:https://pinia.vuejs.org/

Pinia 是 Vue 的专属状态管理库,它允许你跨组件或页面共享状态。它和vuex的作用一样都是做状态管理的。



0 2

pinia的优点



和vuex一样,pinia也是vue2、vue3都支持。
1、抛弃了Mutations的操作,只有state、getters和actions.

极大地简化了状态管理库的使用,让代码编写更加容易直观。其实很多其他的状态管理都是没有Mutations的例如mobx


2、完全支持ts


3、代码更加简洁


总结一下就是,不用很久vuex就会被替换。





0 3

pinia的使用


  1. 安装 

npm i pinia


2. 仓库的定义

与 vuex 的不同之外,在每个模块文件,都要定义仓库;注:defineStore的第一个参数必须唯一


与vuex的变化: 

 1. state是一个函数 ,函数中返回一个对象  

 2. 没有了mutaions  

 3. getters 与 actions 中使用state的属性 , 通过this 关键字


多模块间的使用

注意:

const admin=adminStore();这句话必须在调用的时候执行,不能在一开始就执行


3. 仓库的使用

main.js 中的配置


文件中使用 pinia的方法


pinia中状态的修改


方法1:与vuex相对应的,通过action来修改


方法2:直接修改

注意,

这里展示顺便展示上个知识点遗留的问题,就是不能解构,如果解构了,就不能修改,变成一次性的了

如果觉得每次都写store.xxx很麻烦,官方还提供了方法。


方法3:利用storeToRefs直接修改

注意:

storeToRefs 就是把对象里面的所有值都转化成ref对象,这样上面就可以直接使用,但是下面再用的时候要.value


方法4:利用$patch修改


同时处理多个数据的时候性能比直接修改高性能高;


今天的分享结束,大家有了解pinia的使用了不,哈哈


视频地址:https://www.bilibili.com/video/BV1ae4y147TM/

快速了解并使用pinia的评论 (共 条)

分享到微博请遵守国家法律