千锋教育前端Vue3.0全套视频教程(Kerwin2023版,Vue.js零基础
2023-07-21 12:15 作者:66511883256_bili | 我要投稿

VUEX的原理:
Vuex 是一种专为 Vue.js 应用程序开发的状态管理模式,采用集中式存储管理应用的所有组件的状态,在大型复杂的单页应用中极其有用。
原理:Vuex 借鉴了 Flux、Redux 架构模式的设计思想,整个 Vuex 流程可以总结为 “Vue 组件通过 dispatch 方法触发 action,然后 action 通过 commit 提交一个 mutation,mutation 改变 state,获取 state 的唯一方法就是 getter”
- State: Vuex 使用单一状态树,用一个对象就包含了全部的应用层级状态。所以我们使用一个对象就能存储整个应用的状态。
- Getter: Vuex 允许我们在 store 中定义 getters,你可以将其理解为在 store 里面的计算属性。getters 的返回值会根据依赖被缓存起来,且只有当宝贝的 state 值发生改变才会重新计算。
- Mutation: Vuex 的 store 的状态的唯一就改变的方式:就是提交 Mutation。Mutation 必须是同步函数,一条重要的原则就是要记住,Mutation 必须是同步事务。
- Action: Action 类似于 Mutation,Action 提交的是 Mutation,而不是直接变更状态。Action 可以包含任意异步操作。
- Module: Vuex 允许我们将 store 分割成模块,每个模块拥有自己的 state、mutation、action、getter、甚至其子模块。
Vuex 是解决复杂大型应用,组件间状态共享的有效手段,跟通过 props/emit 或 emit/on 通信比,Vuex 的优势在于大型应用,多个组件共享某些状态时,还能保持状态可以预测,易于维护和追踪