次の構造 (3 つのコンポーネント) のシステムがあります。
Grand-Father -> Father -> Children
そしてサービス: Service
EventEmitter を持っています。
3 つのコンポーネントすべてで、サービスをプロバイダーとして設定し、それをコンストラクターに追加して、イベントエミッターにサブスクライブしました。
this.subscription = this._service.eemiter.subscribe(data=> this.init(data));
問題は、イベントを発生させるサービスからメソッドを呼び出すコンポーネントでのみ発生することです。私の推測では、このように定義することで、各コンポーネントService
は同じではなく異なるものを取得するため、イベントは起動メソッドを呼び出したコンポーネントによってのみ表示されます。
3 つのコンポーネントすべてが同じサービスにサブスクライブして実際にイベントをキャッチできるようにするには、どのような設計を行う必要がありますか?