Pinia学习笔记

区别

Vuex:支持命名空间、有mutations、modules

Pinia:每个都是独立模块

修改state的方式

Vuex

修改state的方式:

1、直接修改(官方不推荐,且严格模式会报错)

2、在mutations中添加方法来修改,业务中通过storecommit调用该方法

3、在mutations中添加方法来修改,store文件中通过actioncommit调用该方法,业务中通过dispatch分发action

流程图:

process

感觉:

1、这个流程太长了

2、触发是通过字符串函数名,没有代码提示,也容易出错

Pinia

1、直接修改属性值

2、通过$patch修改

3、通过action修改(推荐)

注意事项

解构问题

必须用其提供的storeToRefs方法。

getters的值具有缓存特性

只有在首次使用或者当我们改变sum所依赖的值的时候,getters中的sum才会被调用

资料

官网:

https://pinia.vuejs.org/

Pinia VS. Vuex:

https://blog.csdn.net/m0_67948827/article/details/127208880

(精)另一篇对比文章