1.我原来想的方法是创建一个对象,用 es6 的 Object.assign() 方法合并一下
2.但是添加到对象上的新属性不会触发更新。
如果在实例创建之后添加新的属性到实例上,它不会触发视图更新
3.所以使用this.$set的方法。
vm.$set 实例方法,这也是全局 Vue.set 方法的别名
已知数组添加key
data() {
return {
questionList: [
{bbb: 111,lll:"第一个"},
{bbb: 222,lll:"第二个"},
{bbb: 333,lll:"第三个"},
{bbb: 444,lll:"第四个"},
{bbb: 555,lll:"第五个"},
{bbb: 666,lll:"第六个"}
],
testPaperObj: {
sumProportion: 100, // 权重
direction: 'v',
questionScenes: 1
}
}
},
methods: {
addKey() {
this.questionList.forEach((res) => {
this.$set(res, 'direction', this.testPaperObj.direction.toString())
this.$set(res, 'questionScenes', this.testPaperObj.questionScenes.toString())
})
},
}