Pinia 初体验

今天在项目中深度使用了一下 pinia ,浅谈下感受。

在功能上,pinia 和 vuex 其实是一致的,就是将数据、逻辑存到一个独立于组件的、全局可以访问的地方。其实 react 的 redux 也是类似。

书写体验上,pinia 有以下几点让人用起来很舒适。

  • 可以直接对 store 内的数据进行获取和修改,这样让代码书写更趋近于原生的写法。
  • 虽然在 defineStore 中可以区分 state、getter、actions,但在使用的时候却都是如 store.countstate.getCount() 这样的,写法上没有区分这些类型。也是一种趋近于原生的写法。(其实也是兼容 setup 写法,因为在 setup 写法中是不区分这些的)
  • 可以使用类似 setup 的写法来书写 pinia,在书写复杂对象时就很有优势。

另外,pinia 在使用新写法的同时,也保留了 vuex 中类似 store.dispatch() 的写法。这种写法虽然繁琐,但是却也有利于 pinia action 行为的检索。

最后,我感觉的思路 pinia 是基于 vuex,再结合 vue3 中 setup 写法的思路,而产出的更优化版本的状态存储库。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容