【发布时间】:2018-09-24 11:03:03
【问题描述】:
我有一个多维对象并使用 Vue,我试图使内部对象具有反应性。
我的对象如下所示:
data() {
return {
myObject: {}
}
}
填充后的数据是这样的:
myObject: {
1: { // (client)
0: "X", // (index) : (value)
1: "Y"
},
2: {
0: "A",
2: "B"
}
}
如果我尝试使用:
let value = "X";
let client = 1;
let index = 1;
let obj = {};
obj[client][index] = value;
this.myObject = Object.assign({}, this.myObject, obj);
它会抛出一个错误:
TypeError:无法设置未定义的属性“0”
如果我在下面尝试,它会覆盖初始值,因为它最初将对象设置为 {}
let obj = {};
obj[index] = value;
let parentObj = {};
parentObj[client] = obj;
this.myObject = Object.assign({}, this.myObject, parentObj);
将值添加到多维对象的正确方法是什么?
【问题讨论】:
标签: object vue.js vuejs2 vue-reactivity