vue-vuex-mutations的基本使用
之前说过,对state的修改必须经过mutations,而mutations中是用来定义方法的,在vue文件中通过提交某个方法来完成state的修改,比如说现在点击一个按钮,让counter+1,规范的做法如下:
vue文件:
<template> <div> <h1>我是首页页面</h1> <h2>{{$store.state.counter}}</h2> <button @click="addition">counter+1</button> </div> </template> methods: { addition(){ this.$store.commit('increment') } }
store下的index.js:
const store = new Vuex.Store({ state:{ counter: 1000 }, getters: {}, mutations: { increment(state){ state.counter++ } }, actions: {}, modules: {} })
要调用mutations中的方法,必须通过commit的方式来提交,参数是方法的名称。还有一个注意点的是,mutations中的方法默认参数1是state对象,可拿到state中的变量