一.使用背景
∵ :vue中各个组件之间传值咱肯定用过吧,假如一个很多组件的页面互相传值一定很痛苦
∴ :==>在vue中我们可以使用vuex来保存我们需要管理的状态值,值一旦被修改,所有引用 该值的地方就会自动更新。
二.安装及其搭建过程
1.安装vuex
npm install vuex --save
2.src目录下新建stroe文件,在其下新建index.js
3.main.js下引入并声明store对象
三.实现过程
1.关于vuex中的State:
·1.1 创建Vuex的数据源——state,我们需要的数据保存在state中
·1.2 在页面中引用 {{this.$store.state.count}}
·1.3 页面显示
2.关于Vuex中的Getter:
相当于vue中的computed计算属性,getter 的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算,这里我们可以通过定义vuex的Getter来获取,Getters 可以用于监听、state中的值的变化,返回计算后的结果。
2.1
3.关于Vuex中的Mutations:
如果我们需要修改count值怎么办?==> 唯一的方法就是提交mutation来修改
3.1在页面中添加两个按钮,一个加1,一个减1;分别对应add和reduce function,然后在里面直接提交mutations中的方法修改值:
4.关于Vuex中的Actions:
当点击2次后值12变成了3;页面上的值是改变了;达到了修改store中状态值的目的,但是,官方并不介意我们这样直接去修改store里面的值,而是让我们去提交一个actions,在actions中提交mutation再去修改状态值,==>修改index.js文件,先定义actions提交mutation的函数:
5.如果我们需要指定加减的数值,那么我们直接传入dispatch中的第二个参数,然后在actions中的对应函数中接受参数在传递给mutations中的函数进行计算
VueX大概就是这样
-----------------------------分割线---------------------------------
这是vue官网给出的工作流程
一定先看完上边这个案例再来看这儿昂
链接�:https://www.jianshu.com/p/2e5973fe1223