当前位置:首页 > 开发教程 > js/jQuery教程 >

vuex,mutations的两种调用办法小结

时间:2022-03-28 14:15 来源:未知 作者:拥者不珍 收藏

这篇文章主要介绍了vuex?mutations的两种调用方法小结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

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方法了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持源码搜藏网。


下一篇:没有了

js/jQuery教程阅读排行

最新文章