VUEX的作用
vuex是什么?
vuex是一个专门为vue.js应用程序开发的状态管理模式。通俗点说就是我们项目中需要共享的一些数据的管理容器,这里的状态就是数据。
vuex的五大核心
State:状态
vuex存放数据的地方,跟data类似
Mutations:方法库
vuex的方法库,是同步操作,用来操作数据的、是唯一一个可以操作state数据的$store.commit()调用
Action:动作
action是异步操作,可以调用mutations里的方法,$store.dispath(’’)调用
Module:模块
store 的子模块,为了开发大型项目,方便状态管理而使用的
Getters:获取器
vuex通过现有数据计算出新的数据,和计算属性computed类似,$sotre.getters调用
vuex的数据传递流程
主要流程:
组件通过 dispatch 到 actions,actions 是异步操作,再 actions中通过 commit 到 mutations,mutations 再通过逻辑操作改变 state,从而同步到组件,更新其数据状态
流程图
vuex的优点
1.解决了非父子组件的消息传递(将数据存放在state中)
2.减少了AJAX请求次数,有些情景可以直接从内存中的state获取
vuex的缺点
1.刷新浏览器,vuex中的state会重新变为初始状态