将复杂对象从父对象传递到子对象。父母有什么方法可以检测其输出何时发生变化?

时间:2016-09-19 16:43:49

标签: javascript angular

我有一个非常复杂的对象。父组件将其传递给其子组件。然后子组件将此复杂对象的各个部分传递给它自己的子组件。有时候这些孩子(父母的孙子女)会再次把它传下来。

我需要父母检测对象是否已更改。我所见过的传统观点是,当事情发生变化时,孩子应该发出一个事件。我处理的对象很大/很复杂,这个对象可以由子/孙子/曾孙子修改,因此很难跟踪某些事情何时发生变化并且必须对其进行冒泡多次。

父母有没有办法总是知道对象是否被修改过?

1 个答案:

答案 0 :(得分:0)

在此复杂对象中使用observable,并在某些更改时通过此observable发出更改。这样每个感兴趣的人都可以订阅更改。

有关示例,请参阅https://angular.io/docs/ts/latest/cookbook/component-communication.html