0Pricing
Angular Academy · レッスン

@forによるループ

@forとtrack式でリストをレンダリングします。

「@forによるループ」はCoddyKit上の無料Angular Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAngular Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Angular Academyコースには全4レッスンが含まれています。

for によるループ処理

at-for ブロックは、コレクション内の各項目に対してコンテンツを繰り返します。従来の star-ngFor ディレクティブに代わるもので、track 式が必須です。

基本的な for 構文

アット記号、for という語、item of items の順に記述し、続けて一意のキーを指定する必須の track 句を記述します。

// @for (item of items; track item.id) {
//   <li>{{ item.name }}</li>
// }

track が必須である理由

track 式は、変更前後で各項目を識別する方法を Angular に伝えます。これにより、DOM ノードを作り直さずに再利用でき、パフォーマンスが大幅に向上します。

同一性で追跡する

項目に安定した id がない場合(プリミティブな文字列のリストなど)は、項目自体を track の対象にできます。

// @for (name of names; track name) {
//   <li>{{ name }}</li>
// }

empty ブロック

コレクションに項目がない場合、at-empty ブロックがレンダリングされます。at-for ブロックの閉じ中かっこの後に記述します。

// @for (item of items; track item.id) {
//   <li>{{ item.name }}</li>
// } @empty {
//   <li>No items found</li>
// }

コンテキスト変数

at-for ブロック内では、index、count、first、last、even、odd などの便利な変数を使用できます。これらは let で取得します。

// @for (item of items; track item.id; let i = $index) {
//   <li>{{ i }}: {{ item.name }}</li>
// }

index 変数

ドル記号付きの index の値は、現在の項目の 0 始まりの位置を示します。上の例のように、ローカル変数に別名を付けて使用することがよくあります。

first と last

ドル記号付きの first と last の boolean 値は、それぞれ先頭と末尾の項目で true になります。スタイル設定や区切り文字の表示に便利です。

even と odd

ドル記号付きの even と odd の boolean 値は、行のスタイルを交互に変えるときに役立ちます。

Signal をループ処理する

コレクションは signal から取得することもできます。for 式内で呼び出すだけです。

// @for (todo of todos(); track todo.id) {
//   <li>{{ todo.text }}</li>
// }

パフォーマンス上の利点

track が必須であるため、新しい at-for は trackBy を指定しない star-ngFor より高速です。Angular は常に、項目と DOM ノードを対応付ける方法を把握できるためです。

クイックチェック: ループ処理

for ブロックの要件を確認します。

振り返り: ループ処理

必須の track 式を伴う at-for ブロック、空のコレクションに使用する at-empty ブロック、index、first、last、even、odd などのコンテキスト変数を学びました。これは star-ngFor に代わるものです。次は、at-switch による切り替えです。

よくある質問

「@forによるループ」レッスンは無料ですか?

はい。「@forによるループ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Angular Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Angular Academyコースには全4レッスンが含まれています。

「@forによるループ」で何を学びますか?

@forとtrack式でリストをレンダリングします。 ブラウザで直接実行するハンズオンコードでAngular Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Angular Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのAngular Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「@forによるループ」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このAngular Academyレッスンでコードを書いて実行できますか?

はい。すべてのAngular Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. @ifによる条件付きレンダリング
  2. @forによるループ
  3. @switchによる切り替え
  4. @deferによる遅延読み込み
← Angular Academyに戻る