2016-10-21 1 views

答えて

0

イオンはすでにあなたのためにこれを行います。

デフォルトでは、ビューが パフォーマンスを向上させるためにキャッシュされます。ビューが離れてナビゲートされると、その要素はDOM内に のまま残り、スコープは$ watchサイクルから切り離されます。 がすでにキャッシュされているビューにナビゲートすると、そのスコープは に再接続され、DOMに残っている既存の要素はアクティブビューの になります。これにより、以前の ビューのスクロール位置を維持することもできます。

キャッシングを複数の方法で無効にして有効にすることができます。デフォルトでは、 Ionicは最大10個のビューをキャッシュし、これは に設定できるだけでなく、キャッシュするべきでないビューと、 を明示的に指定することもできます。

は、より多くのキャッシュビューについての詳細だけでなく、ionView(ionNavViewの子ビュー)のためhereでオーバー行くionNavView hereのための彼らのdocumentionを見てみましょう。入力する前にビューをキャッシュするかどうかを設定するには、cache-view Booleanを使用します。あなたの状態プロバイダでは、falseにキャッシュを設定します:

$stateProvider.state('myState', { 
cache: false, 
url : '/myUrl', 
templateUrl : 'my-template.html' 
}) 

を、デフォルトでキャッシュされた数を変更することをconfigureでそれを設定します。

$ionicConfigProvider.views.maxCache(0); 

は、この情報がお役に立てば幸いです。

EDIT:

アプリの起動時にいくつかのビューをキャッシュしたい場合は、あなたにもそうすることができます。私がデフォルトで言及したように、Ionicはあなたのためのビューを初めてキャッシュします。 Angular TemplateCacheは、アプリの起動時にすべての/一部のビューが既にキャッシュされていることを確認できます。だから、あなたが言及したように初めて相当のビューを入力すると、初期のラグはなくなります。

hereのドキュメントと、hereの例をチェックしてください。

+0

私は** **ユーザが入る前にそれをキャッシュすることを意味します。たとえば、私は 'HomePage'と' Page1'、 'Page2'を持っています。私が 'HomePage'から' Page1'に初めて移動したとき、ロードされる方法は後で 'Page1'に戻ります。私は最初に行く必要なくキャッシュすることができるようにしたい。 – distante

+0

ああ、私は自分の答えを編集しました。あなたは入力する前にビューをキャッシュすることもできます。 – Sam5487

関連する問題