请问vuex的mutation里如何定义传入两个参数。

clipboard.png
提交一个表单,并将表单中所有的信息以对象的形式保存到vuex,就类似于购物车的形式,提交多少次就会保存多少个用户信息。

clipboard.png
最后将姓名以getter的形式渲染出来。并且点击相应的叉叉可以移除vuex里相应的数据,
vuex里分别定义了添加和删除的方法,如下代码:

clipboard.png

clipboard.png

clipboard.png
但是我想在编辑每一个标签的时候重新提交一个事件,以便于替换掉shopcart里相应的值,但是这样除了传入需要替换的值以外,就还要传入索引,请问mutation里如定义这样的方法,同时commit里又应该如何提交

阅读 6.9k
3 个回答

你可以把你需要用到的数据封装成一个对象或者数组,然后传过去

this.commit("addGoods",{
    value:1,
    index:1
})

不清楚你的store结构是怎样的,先举个例子,如下所示。

mutations: {
  increment (state, payload) {
    state.shopcart[idx] = payload.val
  }
}
store.commit('increment', {
 idx: 1,
  val:'xxx'
})

官网推荐传对象进去,再通过对象找到其他值。

clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题