Vue深表道具

时间:2018-12-12 13:25:47

标签: vue.js

在我的组件中,我有一个计算所得的属性

members() {
  return (this.club.properties || []).map(property => {
    const user = Object.assign({}, property.user, property, { user: undefined })
    return user
  })
},

此计算的属性以v-bind的形式在另一个组件上给出

<MyComponent :members="members" :club="club"/>

当我添加新组件时,MyComponent组件显示所有成员 财产

this.club.properties.push(someProperty)

MyComponent尚未重新呈现,我必须刷新页面才能呈现新属性。

1 个答案:

答案 0 :(得分:2)

您需要进行深层复制以使Vue具有反应性

this.club.properties.push(someProperty)
this.club = JSON.parse(JSON.stringify(this.club))

这是常见的Vue reactivity problem