当前位置:主页 > 网页前端 > vue >

vuex mutations的两种调用方法小结

时间:2023-02-18 10:17:04 | 栏目:vue | 点击:

mutations的调用方法

直接通过$store.commit调用

<button @click="$store.commit('mutations中的方法名','可带参数')">调用</button>

不需要再进行其他配置

通过在methods中注册方法调用

//先引入mapMutations
import {mapMutations} from 'vuex'
export default {
    data(){
        return{
            msg:"hello vuex"
        }
    },
    //注册方法,三个.是属性展开符,可以将mapMutations中的方法展开后放入methods中,就可以直接调用了
    methods:{
        ...mapMutations(['mutations中的方法名称'])
    }
}
<button @click="mutations中的方法名称('可带参数')">-</button>

细数mutations的用法

为什么要用mutations

使用mutations的好处是可以跟踪到是哪里调用了mutations里的方法,在严格模式下调用mutations也不会报错。

如果用其它方法的话上面说的两个好处都不存在。

用法

先定义个mutations对象,然后定义指定的方法就可以了,很简单,代码示例:

   state: {
        isHome: true
    },
 
    mutations: {
        changeIsHome(state) {        // 这里将state传进来了
            state.isHome = false
        }
    }

在stote.js中定义好mutations方法之后,就在vue中触发事件的时候调用mutations方法就可以了,调用方法示例:

  // 这里示例是在created方法中触发mutations方法
  created() {
    this.$store.commit('changeIsHome')    // 这就是调用的方法
  },

执行:this.$store.commit('changeIsHome');就可以调用mutations方法了。

您可能感兴趣的文章:

相关文章