vue父子组件通信的问题

父组件data里定义的两个变量dept和time,要组合成一个新对象newObj传给子组件,并且dept和time变化时,子组件能监听到,这个要怎么做?

阅读 1.7k
2 个回答

子组件里 watch newObj,设置 deep :true

只需要让newObj为响应式对象就行,可以尝试以下方法:

  1. 在data中定义newObject
  2. 定义一个computed,如
{
  computed: {
    newObject () {
      return {
        dept: this.dept,
        time: this.time
      }
    }
  }
}
  1. 使用vue.observable,如<child :data="vue.ovservable({dept: this.dept, time: this.time})" />,注意,这里如果要在模板中直接使用vue的话,需要把vue添加到this中。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题