vuex的使用场景,以及vuex中state、mutations和actions的理解
背景:
由于vue组件之间传值很麻烦,比如登录注册中的用户名密码等,那么,我们可不可以创建一个区域,可以存放这些全局的属性呢?vuex由此诞生,他是vue全家桶里的一个插件,通过使用它,可以创建全局的属性,任何组件都可以访问并操作。
vuex中的内容:
vuex中的内容: vuex包含几个要素:
- state:在vuex内部,这个state是用于存储状态的(通俗一点就是用于存储全局变量的),相当于组件内部的data属性。
- mutations:修改state。是Vuex修改state的唯一推荐方法,其他修改方式在严格模式下将会报错。
- actions:如果mutations需要修改state里面的数据,就必须收到actions提交的任务。
修改state工作流程的理解
修改state工作流程图:
流程就是:component组件发出命令给actions,然后actions将这个任务提交给mutations去执行,mutations就去修改state的值
这个东西不太好理解,可以通过意象来理解,我举个例子:components组件就是你,你是班主任,actions是班干部,mutations是同学,state是同学的作业本。
现在你(components)需要收集作业本,你肯定不会自己去干,你会派发任务给班干部(mutations),然后班干部就去通知学生(mutations),学生现在就将作业本上交,作业本(state)的转态就从未交变成了已交。