web-dev-qa-db-ja.com

@ angular / platform-b​​rowser vs. @ angular / platform-b​​rowser-dynamic

新しい例(シード、angular.io、..)には、ブートストラッププロセスの別のインポート@angular/platform-browser-dynamicがあります。

誰か説明してもらえますか、それと@angular/platform-browserの違いは何ですか?

公式のangle.ioウェブサイトにはまだ情報がありません。

46
user2227400

Angle2の履歴をよく見ると、2つのバージョン1)ベータバージョン2)リリース候補バージョンがあることがわかります。現在、r.c 3(リリース候補3)です。リリース候補バージョンとは、最終リリース前のバグ修正リリースを意味します。したがって、angular2がベータ版から最初のリリース候補バージョン(rc1)に移行すると、いくつかのディレクトリ変更が行われます...たとえば

angular2/core---->@angular/core
angular2/platform/browser------>@angular/platform-browser-dynamic

ここにスナップを追加します enter image description here

詳細については、をご覧ください

https://github.com/angular/angular/blob/master/CHANGELOG.md

あなたの答えが見つかることを願っています。ありがとう

7
himadri
  • platform-b​​rowserには、ブラウザ実行用に共有されるコードが含まれます(DOMスレッド、WebWorker)
  • platform-b​​rowser-dynamicには、テンプレート(バインディング、コンポーネントなど)およびリフレクション依存性注入を処理するクライアント側コードが含まれています

オフラインテンプレートコンパイラを使用すると、すべてのリフレクトアクセスとメタデータが生成されたコードに変換されるため、platform-b​​rowser-dynamicは不要になります。

https://stackoverflow.com/a/36017067/217408 に示すようなコンポーネントを動的に生成したい場合は、動的なものが必要です。

60

Platform-b​​rowser-dynamicとplatform-b​​rowserの違いは、angularアプリがコンパイルされる方法です。

動的プラットフォームを使用すると、angular Just-in-Timeコンパイラがフロントエンドおよびアプリケーションに送信されます。つまり、アプリケーションはクライアント側でコンパイルされます。

一方、プラットフォームブラウザーを使用すると、アプリケーションの事前コンパイル済みバージョンがブラウザーに送信されます。通常、これは非常に小さいパッケージがブラウザに送信されることを意味します。

https://angular.io/docs/ts/latest/guide/ngmodule.html#!#bootstrap にあるブートストラップのangle2-documentationで詳細を説明しています。

51
niliuz