Vuex - 将特定状态作为参数传递
Vuex - Passing specific state as a parameter
在 Vuex 中,我有两个状态想用相同的函数进行变异。有没有什么方法可以传递你想要改变的确切状态,这样在 mutations
中我就不必重复同一个函数几次就可以工作了?
我现在拥有的
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;
}
}
在 Vuex 中,我有两个状态想用相同的函数进行变异。有没有什么方法可以传递你想要改变的确切状态,这样在 mutations
中我就不必重复同一个函数几次就可以工作了?
我现在拥有的
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;
}
}