2016-09-19 5 views
0

私は非常に複雑なオブジェクトを持っています。親コンポーネントはこれを子コンポーネントに渡します。子コンポーネントは、この複合オブジェクトのさまざまな部分をそれ自身の子に渡します。時にはこれらの子供たち(親の孫)は、それをもう一度伝えます。複雑なオブジェクトを親から子に渡します。親の出力が変化したときに検出する方法はありますか?

オブジェクトが変更されたかどうかを検出するには、親が必要です。私が見てきた従来の知恵は、何かが変わったときに子供がイベントを出すべきだということです。私が扱っているオブジェクトは大/複雑で、このオブジェクトは子供/孫/曾孫によって変更することができるので、何かがいつ変化したのかを把握するのは少し難しく、複数回バブルする必要があります。

親がオブジェクトが変更されているかどうかを常に知る方法はありますか?

+1

「私は非常に複雑なオブジェクトを持っています。 – SQLMason

+0

C#には、INotifyPropertyChangedがあります。 JAVAには良いメッセージング・クラスがあります:https://docs.oracle.com/javaee/7/api/javax/jms/MessageListener.htmlおよびINotifiyPropertyChangedのバージョン:http://www.programcreek.com/java-api- examples/index.php?source_dir = CoolAndroidBinding-master/src/com/kk/binding/property/INotifyPropertyChanged.java – SQLMason

答えて

0

この複雑なオブジェクトのオブザーバブルを使用し、何かが変化したときにこのオブザーバブルを使って変更を放出します。このようにして、すべての関係者が変更を購読することができます。

たとえば、https://angular.io/docs/ts/latest/cookbook/component-communication.htmlを参照してください。

関連する問題