0

私は一種の TabControl を作成しました。そこでは Pages をアクティブにし、PageNumber に応じてテーブル (ng-repeats) を表示します。このテーブルは独自のディレクティブ (自作のグリッド ディレクティブ) です。

すべてのページで ngIf が使用され、対応する PageNumber が設定されるまでレンダリングされませんが、タブページが少ない場合は、タブページが多い場合よりもアプリケーションが高速になることがわかりました。

私は、ngIf コンパイルがコンテンツであるためだと信じています。「compileNodes」が頻繁に呼び出されることがわかりました。

誰も同じことを経験していますか?回避策のアイデアはありますか?

編集: また、興味深いのは、最初に tabcontroll (単一ページ アプリケーション内のリンク) に移動するときは高速で、その後は遅くなることです。別のコンテンツに移動すると、タブ付きコントロール全体が削除されますが、何かが記憶されているかのように。

編集2: 私はまだそれを理解しようとしています. ngRepeat で行う別の TabControl 内に TabControl を表示しているので、ngRepeat である可能性もあります。興味深いことに、自分のページに初めてアクセスしたときは速く、次にクリックして別のページに移動し、戻ってきたときは遅くなりました! ngRepeat はいくつかのものをキャッシュに保持しますか?? Browser-Profile は、jQuery の data_user -> キャッシュに解放されていないものがいくつかあることを教えてくれます (Chrome では、クリックごとに最大 9MB のデータが!!)

4

1 に答える 1

0

タブにジャンプして表示するのではなく、すべてのケースを実行してタブを表示する必要があるため、ng-switch代わりにタブビューを使用します。ng-if

于 2014-11-25T11:49:02.297 に答える