一、什么是Vuex
Vuex是一个专门为Vue.js应用程序开发的状态管理模式, 它采用集中式存储管理所有组件的公共状态, 并以相应的规则保证状态以一种可预测的方式发生变化
二. 为什么要使用Vuex?
试想这样的场景, 比如一个Vue的根实例下面有一个根组件名为
App.vue
, 它下面有两个子组件 A.vue
和 B.vue
, App.vue
想要与 A.vue
或者 B.vue
通讯可以通过props传值的方式, 但是如果 A.vue
和 B.vue
之间的通讯就很麻烦了, 他们需要共有的父组件通过 自定义事件进行实现, A组件想要和B组件通讯往往是这样的: A组件说: "报告App老大, 能否帮我托个信给B组件" => dispatch一个事件给App
App组件说: "包在我身上, 它需要监听A组件的dispatch的时间, 同时需要broadcast一个事件给B组件"
B组件说: "信息已收到", 它需要on监听App组件分发的事件
三、实现
vuex