2016-08-18 9 views
1

Aureliaを使用して作成した1ページのアプリケーションがあります。それは素晴らしい作品です。シングルページアプリケーションでページを更新する方法

ただし、更新プログラムを公開すると、ブラウザにキャッシュされたページを更新させることが難しい場合があります。古いバージョンが表示されることがあります。

ブラウザの更新、コントロールF5を試しました。

もindex.htmlを

<meta http-equiv="Pragma" content="no-cache"> 
<meta http-equiv="Expires" content="-1"> 
<meta http-equiv="CACHE-CONTROL" content="NO-CACHE"> 

の頭の中にこれを入れている。しかしsystem.jsは、上記のいずれかの効果を持つことになり、個々のコンポーネントを取り出すとき、私は考えていません。

+0

これは、すべてを開発しているとき、またはユーザーが古いバージョンで「作業する」ときに問題になるのですか? – kabaehr

+0

エンドユーザーの問題のみ。しかし、私は答えを見つけて投稿します。 –

答えて

1

さらに検索したところ、SystemJsでキャッシュバーストを行う方法について説明したthisが見つかりました。

var systemLocate = System.locate; 
     System.locate = function(load) { 
     var System = this; 
     return Promise.resolve(systemLocate.call(this, load)).then(function(address) { 
      if(address.lastIndexOf("html.js") > -1) return address; 
      if(address.lastIndexOf("css.js") > -1) return address; 
      return address + System.cacheBust; 
     }); 
     }; 
     System.cacheBust = '?bust=' + Date.now(); 

     System.import('aurelia-bootstrapper'); 
関連する問題