2016-08-17 13 views
0

私は、RESTfulなAPIを介してユーザーを取得するサービスを提供しています。それはObservable実装を使用します。angular2他のコンポーネントと観測可能なデータを共有することは可能ですか?

また、8つの子コンポーネントを持つ親コンポーネントもあります。

親コンポーネントで単一のHTTPリクエストを作成して、その子コンポーネント間で共有することができるかどうかを知りたい。

this.userApi.getUser(id) 
     .subscribe(response => {this.user = response;}, 
        error => error); 

私は、インポートなどのように、各コンポーネントの)(コンストラクタにユーザモデルを注入しました::一度

constructor(public user: User){} 

ここ

は親でユーザーを定義するための呼び出しです ユーザが親に定義されています。子コンポーネントの console.log(user)を起動するボタンがありますが、これは undefinedに戻ります。

+0

あなたはNG2 RC4またはRC5にいますか? –

+0

getUser()の実装を投稿しますか? –

答えて

0

単一のHTTP要求を作成してユーザーデータを共有する場合はサービスを作成します。ユーザーオブジェクトを格納します。これは、モジュール内の各コンポーネント(ルートおよびすべての子)に対して使用可能になります。

また、ngRx店舗のアイデア - https://github.com/ngrx/storeを使用することもできます。このソリューションの利点は、アプリケーションのすべての断片にユーザーストアを登録できることです。

関連する問題