2016-07-20 5 views
0

事実上すべてのチュートリアルはangular2:欠落している「詳細ビュー」サービスのチュートリアル

[ 
    {"id":1, "name":"cat"}, 
    {"id":2, "name":"dog"}, 
    {"id":3, "name":"cow"}, 
    ... 
] 

とコンポーネントが*ngForを使用して、このようなサービスを利用する方法を示しなどのデータを取得するサービスを作成する方法を示します。

しかし、これらのいずれかの選択に基づいてさらに多くのデータを取得したい場合はどうでしょうか。たとえば、私は、私は詳細コンポーネントに消費するようにしたい

[ 
    { 
    "id":2, 
    "name":"dog", 
    "species": "canine", 
    "weight": "2-100kg", 
    "height": "10-100cm", 
    "smell": "good", 
    "character" : "great", 
    ... 
    } 
] 

LIKE「詳細サービス」を呼び出すために*ngFor選択を使用して上記の「リストサービス」から犬を選択します。

このようなサービスをどのように「消費する」のですか? *ngForは、特にテンプレートの完全に異なる領域に異なる部分を表示し、<li>リストには表示したくない場合があるため、1つの個別のエントリについては気分が良くありません。

答えて

0

構造に影響を与える選択アクションを追加できます。

<select [ngModel]="selectedOption" (ngModelChange)="onChange($event)" name="sel"> 
    <option [value]="i" *ngFor="let i of options">{{i}}</option> 
</select> 
+0

これは必須であるかどうかに関係なく、最初からすべてのデータをロードする必要があるため、**私が避けたい**です。各レコードのペイロードが100kbの20kbのシナリオを考えてみましょう。これは、ユーザーが1レコードだけを必要としていても毎回2MBをロードする必要があることを意味します。したがって、最小限のデータセットを使用して選択を行い、関連するレコードを独立したサービスからロードするだけです。しかし、** no **チュートリアルでは、それを行う方法を示しています - 私はそれらの負荷を見て、私は立ち往生しています。 –

関連する問題