2017-08-25 8 views
0

AppComponentでサービスを呼び出してデータを取得したいとき、別のコンポーネントにデータを送信したいときは別のコンポーネントにロードします。データを他のコンポーネントでキャプチャできることをどうすれば保証できますか? apisから取得しているのと同じデータが2-3か所で再利用されるため、この設定でAPIコールを最小限に抑えてください。AppComponentから別のコンポーネントを別の時間にロードする別のコンポーネントにデータを渡す

+0

は、最初のコンポーネントか兄弟の子コンポーネントですか?そして、あなたはサービスを呼びたいと思っています...注射可能なサービスも作りましたか? – Carsten

+0

子供の子供です –

答えて

0

グローバルに注入可能なサービスにデータを格納したいとします。このサービスでは、BehaviorSubjectを定義する必要があります。下記参照。

@Injectable() 
export class DataService { 

    // Can subscribe to and emit events from a BehaviorSubject 
    // BehaviorSubject can act like an event bus but will also return the last value in the stream upon subscription 
    public userSubject = new BehaviorSubject(null); 

} 
0

サービスでBehaviorSubjectを使用することができます。 後でロードされたコンポーネントがサービスを注入し、BehaviorSubjectにサブスクライブすると、すぐに最後に発行された値が取得されます。

+0

はい、うまくいきました。ありがとうございました –

関連する問題