Pinia 是一个 Vue 的存储库, Pinia最初是一个实验,它的作者是Vue.js核心团队的成员,本来是为了测试Vuex5提案而出现的,在2019年11月左右重新设计的Vue状态管理以适用于 Composition API,它不但支持Vue3也支持Vue2的options API,也是下一代的轻量级状态管理库。
我们知道在不同版本的Vue中,所需要使用的状态管理库Vuex版本也是不一样的,不然就会有错误发生。
vue2.x 我们使用--》 vuex 3.x版本
vue3.x 我们使用--》vuex 4.x版本
然鹅鹅🤷♀️,我们的Pinia就不会有这个限制啦~~ 它不但支持Vue3也支持Vue2,且不一定要与 Composition API 一起使用,API 的使用方式在两者中也是保持一致的。★,°:.☆( ̄▽ ̄)/$: .°★ 。🌹🌹🌹
data 的概念;computed 的概念;methods 的概念;我们先来看看官方对官方对 Vuex5 的 Rfcs 提案如下图:github.com/vuejs/rfcs/…
而这些与不pinia的功能类似么?而且在这个提案下方的评论中 也可以看到
在前边也介绍了Pinia是vue的官方核心开发成员开发的,天然对vue是支持的,设计也非常接近vuex5的提案,甚至vuex5的部分灵感都是来自于pinia,那究竟它到底有哪些优势呢?类比vuex 4.x好在哪呢?
那么接下来我们来看看vuex 4.x的缺点:
state的值,如果是同步更新需要mutations,异步的时候需要在actions