我在vuex文件中具有以下数据结构:
state:{
info:[
{
name: 'Some field 1',
value: '',
pattern: /.+/,
//status: ''
},
{
name: 'Some field 2',
value: '',
pattern: /.+/,
// status: ''
}
]
我希望每个对象都有一个字段status: ''
。但是我不想重复代码。在Vue组件中,我为此写过:
beforeMount(){
// add new fuild
}
但是这种方式在Vuex中不起作用。
beforeMount(){
console.log('does not work');
for (let i = 0; i < this.info.length; i++) {
this.$set(this.state.info[i], 'status', '');
}
}
如何动态地将新字段添加到状态中?
答案 0 :(得分:0)
在变异中,只需执行以下操作即可:
state.info = state.info.map(x => ({
...x,
status: ''
})