Vuex的使用

今天来总结一下Vuex的使用,来一个很简单的小demo,方便学习
Vue的有点如下

Vuex状态管理跟使用传统全局变量的不同之处:
1.Vuex的状态存储是响应式的:就是当你的组件使用到了这个Vuex的状态,一旦它改变了,所有关联的组件都会自动更新相对应的数据,这样开发者省事很多。
2.不能直接修改Vuex的状态:如果是个全局对象变量,要修改很容易,但是在Vuex中不能这样做,想修改就得使用Vuex提供的唯一途径:显示地提交(commint)mutations来实现修改。这样做的好处就是方便我们跟踪每一个状态的变化,在开发过程中调试的时候,非常实用。

1:安装vuex

cnpm install  vuex --save

2:在main.js中必须要声明调用哦
image.png

3:新建一个store文件夹,下面建立一个index.js存储相关代码
image.png
4:我们再HelloWorl.vue中来实现,代码如下
我们来输出count变量

{{$store.state.count}}

image.png

image.png
5:没错就是点击+的时候创建一个方法,increment()方法执行结果如下,这里直接点击触发一个分发事件,暂时这么叫吧。this.$store.dispatch(‘actionincrement’)
(这里的分发,我自己的理解是可以分发到异步操作actions,actions是一个中间商,最后还是会去掉mutation中的方法,所以我们也可以直接commit提交调用mutations中的方法,只不过mutations的方法是一个同步操作,看个人需要吧!)

image.png

image.png
6:注意这里的actionincrement方法名称要对应store下面的index.js中的actions的方法名称一模一样才可以

image.png
image.png
7:到这里你回发现,这个方法又调用了一个mutationincrement方法没错,就是又提交了mutations,这里有2中写法,我采取的是第二种

A:第一种
//actionincrement(context){
//			context.commit('mutationincrement')
//		},
B:第二种
//方法2
	actionincrement({commit}){
		commit('mutationincrement')
},

image.png

8:然后在mutation中定义刚才的方法,然后调用就可以啦
image.png
9:最后如果想对最后获取的数据做其他处理可以使用getters,代码如下
这里可以直接调用getTotalCount这个方法
image.png
10:最后在界面上面看下最后的效果吧
image.png

这样就可以获取count的值啦,其他界面也可以直接调用啦!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值