Pinia学习

一.

Vue新一代状态管理工具,Pinia.js

Pinia.js 是新一代的状态管理器,由 Vue.js团队中成员所开发的,因此也被认为是下一代的 Vuex,即 Vuex5.x,在 Vue3.0 的项目中使用也是备受推崇。

Pinia.js 有如下特点:

  • 完整的 typescript 的支持;
  • 足够轻量,压缩后的体积只有1.6kb;
  • 去除 mutations,只有 state,getters,actions
  • actions 支持同步和异步;
  • 没有模块嵌套,只有 store 的概念,store 之间可以自由使用,更 
  • 好的代码分割;
  • 无需手动添加 store,store 一旦创建便会自动添加;

它的定位和特点也很明确:

直观,像定义组件一样地定义 store,并且能够更好地组合它们;

完整的 Typescript 支持;

关联 Vue Devtools 钩子,提供更好地开发体验;

模块化设计,能够构建多个 stores 并实现自动地代码拆分;

极其轻量(1kb),甚至感觉不到它的存在 ;

同时支持同步和异步 actions;

yarn add pinia

扫描二维码关注公众号,回复: 14844553 查看本文章

通过 mapState 或者 mapWritableState 辅助函数来读写 state

保持其响应式的同时从 store 中提取属性要使用 storeToRefs

通过 $patch 修改多个字段信息

$subscribe方法跟 vuex 的 subscribe 类似,用于监听 state 及其 mutation 动作。

Getters 就是 store 的计算属性(computed)。大部分时候,Getter 通过 state 值去做计算

Actions 相当于组件里的 methods

 

Introduction | Pinia

猜你喜欢

转载自blog.csdn.net/aZHANGJIANZHENa/article/details/124523378