2017-05-25 16 views
1

私は壁を作りたいと思っています。私は3種類の壁の壁の種類があります。角度 - 別のコンポーネントのリスト

  • テキスト
  • 写真
  • ビデオ

ベストプラクティスは何ですか? 3つの異なるコンポーネント、または1つのコンポーネントと3つのケースの内部?

* ngFor内で正しいコンポーネントを選択するにはどうすればよいですか?

<div *ngFor="let post of posts"> 
    <text-post *ngIf="post.type == 1"></text-post> 
    <photo-post *ngIf="post.type == 2"></photo-post> 
    <video-post *ngIf="post.type == 3"></video-post> 
</div> 
+0

これを行うには、1つのコンポーネントと3つのケースがあります。 –

答えて

1

私はngSwitchで1つのコンポーネントに行きます。

ですから、例えば、このような何かを行うことができます:

<div *ngFor="let post of posts"> 
    <ng-container [ngSwitch]="post.type"> 
     <text-post *ngSwitchCase="1"></text-post> 
     <photo-post *ngSwitchCase="2"></photo-post> 
     <video-post *ngSwitchCase="3"></video-post> 
    </ng-container> 
</div> 

ng-containerはDOMにレンダリングされませんので、ページのレイアウトに干渉しない要素です。

関連する問題