javascript - 使用Vuex中的 mapMutations 辅助函数时怎么传递参数(Payload)

查看:800
本文介绍了javascript - 使用Vuex中的 mapMutations 辅助函数时怎么传递参数(Payload)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

用this.$store.commit('xxx',obj)时可以传递一个obj,那么用mapMutations()时怎么传递一个额外的参数。
并没有在官方文档上找到方法,难道mapMutations里面只能放没有传递额外参数的方法吗?
按道理讲不应该啊,既然提供了简便的方法好歹服务到位吧。

**使用 this.$store.commit()时** 两种格式都能提交附加的数据

方法一:
store.commit('increment', {
  amount: 10
})

方法二:
store.commit({
  type: 'increment',
  amount: 10
})



**使用mapMutations()时** 就没发现有提交的位置

import { mapMutations } from 'vuex'

export default {
  // ...
  methods: {
    ...mapMutations([
      'increment' // 映射 this.increment() 为 this.$store.commit('increment')
    ]),
    ...mapMutations({
      add: 'increment' // 映射 this.add() 为 this.$store.commit('increment')
    })
  }
}

解决方案

this.increment({ amount: 10 })this.add({ amount: 10 })

这篇关于javascript - 使用Vuex中的 mapMutations 辅助函数时怎么传递参数(Payload)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆