Vue:将元素推送到对象中的数组

时间:2020-01-23 11:15:25

标签: javascript vue.js nuxt.js

我具有以下结构:

data: () => ({
  loadProgress: [{}]
})

loadProgress

的示例结构
[{
  itemId: 1,
  details:[{}, {}, {}]
}, {
  itemId: 2,
  details: [{}, {}, {}, {}]
}]

我该如何this.loadProgress[index].details.push(...)以达到反应性?

我正在用v-for渲染它,其中:keyitem.itemId

1 个答案:

答案 0 :(得分:1)

您可以使用vue $ set方法。默认情况下,vue不会对深层嵌套对象进行更改,因此您应使用以下代码:

this.loadProgress[index].details.$set(index, val);
or
this.$set(this.loadProgress[index].details, index, val);