2017-07-15 9 views
0

角度の新しい方です。私はNgForNgForOfの違いを知りたかったのです。サイトではNgForは推奨されておらず、NgForOfを使用することを提案しています。前者の使用を続けることができますか、後で変更する必要があります。前もって感謝します。角度4のループの場合

EDIT

私もそれ廃止反対かを使用してについて尋ねていることに注意してください。またangular4ないangular2

答えて

0

ngForngForOfに関するされ、私の質問は、2つの別個のものではありません - 彼らは実際NgForOfディレクティブのセレクタです。次のようにngForOfに対しngForクラスの詳細について

もあり

任意の型である、すなわちngForOf : anyがクラスdefinitonを持ってngForOf : NgIterable<T>

+0

ありがとうございます。私はそれを使うべきかどうかを説明してください。 – Shailey

+0

[Javaで非推奨のメソッドやクラスを使用するのは間違っていますか?](https://stackoverflow.com/a/2941912/8313343)にも同様の説明があります。あなたはこれを読んでアイデアを得ることができます。 –

0

ngForとngForOfは、2つの別個のものではありません - 彼らは実際NgForOfディレクティブのセレクタです。

ソースを調べると、NgForOfディレクティブにセレクタとして[ngFor] [ngForOf]が含まれていることがわかります。これは、両方の属性をディレクティブが 'activate'するために要素上に存在する必要があることを意味します。話す。

* ngForを使用すると、Angularコンパイラは、その構文を要素の両方の属性を持つその正規形に脱糖します。

ので、

<div *ngFor="let item of items"></div> 

desugars:

<template> 
    <div [ngFor]="let item of items"></div> 
</template> 

この最初のデsugaringは '*' によるものです。次の脱糖は、「アイテムのアイテムを許可する」というマイクロシンタックスのためです。 Angularコンパイラは次のようにそれを解凍します。

($ implicitは、ディレクティブが現在の項目を参照するために使用する内部変数と考えることができます)。

標準的な形式では、ngFor属性は単なるマーカーになりますが、ngForOf属性は実際には反復したいもののリストを指すディレクティブへの入力です。