2016-11-24 14 views
0

誰でも助けてくれますか?角2は初期化が遅い

マイ角度2アプリケーションの初期化に時間がかかっています。

リクエストは16件です。 3MBの比較的大きなサイズにもかかわらず、問題はファイルを持ち込むことではありません。

私はすべてのファイルを取得した後の時間を参照しています。私のノートオン

は私が唯一の10のコンポーネント、1本のパイプ、そして今の6つのディレクティブを持っているので、高い時であると信じて3〜4秒、です。

考えられるのは、アプリケーションには200個近くのコンポーネントがあるということです。 次に、遅延読み込みを作成します。

しかし、10個のコンポーネントについては、より高速になるはずです。 携帯電話では、待機時間は10,12秒に達します。 iPadでは待ち時間も比較的長いです。 15秒以上。

私はwebpackを使用しています.Cssとjsを小さくしています。 サーバー(asp.netコア)で事前レンダリングを使用しています。

この遅延は、すべてのファイルをダウンロードした後に発生します。 つまり、スクリーンをレンダリングするのは角度2の処理時間です。

他に何ができますか? どうしたらいいですか?

テストリンク: http://projetos.codegenerator.com.br/angular2/

感謝。

答えて

1

私は最終的にアプリケーションで必要なパフォーマンスを得ました。 これはちょっとした作業が必要でしたが、本当にそれに値するものでした。

は本当にパフォーマンスの向上は、それだけの価値がある、AOTでコンパイルするようにアプリケーションを構成します。

0

アプリケーションとその依存関係のより遅れて何がある場合は角度2がよく、その性能を試験します。..

少数のコンポーネントがある場合は、ご使​​用の環境を確認し、その後は何も問題はフレームワーク側ではありません。彼らは開発の依存関係があるだって

のWebPACKまたは任意の他のビルドツールは、

あなたには、いくつかのサードパーティのサービスやライブラリのためのCDNのを使用している場合は、そのサービスは、時間にしているかどうかを確認し、パフォーマンスとは何の関係もありません。

+0

こんにちは。 私は良いこととしてwebpackを参照しました。 すべてがパックされています。 私が言ったように、遅れはファイルを持って来ることではありません。 はい、クライアントで処理します。 さらに詳しい情報が必要な場合は、それを渡すこともできます。 あなたのマシンに表示されるまでの時間を教えてください。 ありがとうございます。 –

1

私はあなたがWebPACKのような任意のバンドルツールを使用していないと思う、systemjsあなたはNG2アプリをデプロイする場合..

、あなたは(事前に)AOTを使用してコンパイルする必要があります。 JIT(Just in time)コンパイルを使用していると思います。 angular2ガイドページで

、AOTで

、ブラウザは、アプリケーションのコンパイル済みのバージョンをダウンロードします。ブラウザは実行可能コードをロードするので、まずアプリケーションをコンパイルするのを待つことなく、アプリケーションをすぐにレンダリングできます。

あなたがJITコンパイルを使用すると、ブラウザはangular2コンパイラによって定義されたvendor.jsをダウンロードし、ちょうどあなたのアプリケーションをコンパイルします。遅すぎると、クライアントがベンダーファイルをダウンロードする必要があります。 AOTを使用すると、ベンダー・ファイルを使用する必要がないため、リソースが小さくなります。

私は、アプリケーションを配備するときにAOTコンパイルを使用し、リソースサイズに遅延ロードを使用することをお勧めします。

ng2 AOTコンパイルが不思議なら、このガイドをお読みください。

angualar2-cookbook-AOT

そして、ここでの例では、webpack2と怠惰な負荷とangular2アプリです。

ファイル構造と設定ファイルをここに使用します。

サンプルアプリケーションでテストしたところ、aotにバンドルされているファイルは500KB未満でした。

angular2-webpack2-aot

関連する問題