7

Ahead-of-Time Compilation (または AoT) は、Angular2 で提供される機能です。しかし、公式サイトでそれについての良い説明を見つけることができませんでした.

誰かがそれを明確に定義できますか?

4

2 に答える 2

8

ngForパイプやデータ バインディングなどの angular2 固有の構文を使用するテンプレートは、ブラウザーが読み取れる vm フレンドリーなコードにコンパイルする必要があります。

ジャスト イン タイム コンパイル (通常の動作) の場合、フレームワークは angular コンパイラを出荷する必要があり、アプリの起動時にテンプレートがブラウザーでコンパイルされます。これは、ブラウザがテンプレートをレンダリングする前にコンパイルする必要があるため、Angular のバンドル サイズが大きくなり、ロード時間が長くなることを意味します。

これは、ブラウザで typescript を変換する方法に似ています。これはコストのかかるプロセスであるため、通常、バンドルまたはビルド プロセス中に typescript をオフラインでトランスパイルします。

テンプレートをオフラインでレンダリングすると、次のような利点はほとんどありません

  • より小さいバンドル サイズ: angular2 ライブラリの 60% はコンパイラです。テンプレートが事前にコンパイルされたので、コンパイラを出荷する必要はもうありません。これにより、アプリが出荷する必要があるバンドルのサイズが減少します
  • 読み込み時間の短縮: テンプレートは既に VM に適したコードにコンパイルされているため、ブラウザーはテンプレートのレンダリングに時間がかかりません。ページのレンダリングが高速になります。
于 2016-09-14T11:05:08.097 に答える