Vuex 改进了 Redux 中的 Action 和 Reducer 函数,以 mutations 变化函数取代 Reducer,无需 switch,只需在对应的 mutation 函数里改变 state 值即可
Vuex 由于 Vue 自动重新渲染的特性,无需订阅重新渲染函数,只要生成新的 State 即可
Vuex 数据流的顺序是∶View 调用 store.commit 提交对应的请求到Store 中对应的 mutation 函数->store 改变(vue 检测到数据变化自动渲染)
通俗点理解就是,vuex 弱化 dispatch,通过 commit 进行 store 状态的一次更变;取消了 action 概念,不必传入特定的 action 形式进行指定变更;弱化 reducer,基于 commit 参数直接对数据进行转变,
使得框架更加简易;
(2)共同思想
-
单—的数据源
-
变化可以预测
-
本质上:redux 与 vuex 都是对 mvvm 思想的服务,将数据从视图中抽离的一种方案;
-
形式上:vuex 借鉴了 redux,将 store 作为全局的数据中心,进行mode 管理;