Vue.js Vuex-将特定状态作为参数传递

Vue.js Vuex-将特定状态作为参数传递,vue.js,vuejs2,vuex,Vue.js,Vuejs2,Vuex,在Vuex中,我有两个状态,我想用相同的函数进行变异。有没有办法传递你想要突变的确切状态,这样在突变中我就不必重复相同的功能几次,它才能工作 我现在有什么 state: { firstparam:'', secondparam:'' }, mutations: { addLimit: function (state, payload) { state.firstparam = payload; }, addSecondLimit: function (stat

在Vuex中,我有两个状态,我想用相同的函数进行变异。有没有办法传递你想要突变的确切状态,这样在突变中我就不必重复相同的功能几次,它才能工作

我现在有什么

state: {
    firstparam:'',
    secondparam:''
},
mutations: {
  addLimit: function (state, payload) {
    state.firstparam = payload;
  },
  addSecondLimit: function (state, payload) {
    state.secondparam = payload;
  }
}

提前谢谢

您可以将要更改的参数名作为有效负载中的属性传递

//to mutate firstparam
StorageEvent.commit('addLimit', {prop: 'firstparam', value: 'change'})

//to mutate secondparam
StorageEvent.commit('addLimit', {prop: 'secondparam', value: 'change'})
并使用有效载荷的prop属性对特定属性进行变异

state: {
  firstparam:'',
  secondparam:''
},
mutations: {
  addLimit: function (state, payload) {
    state[payload.prop] = payload.value;
  }
}

完美的那正是我要找的!