2016-08-18 2 views
1

Ich habe eine einzelne Seite App mit Aurelia geschrieben. Es funktioniert großartig.So stellen Sie sicher, dass die Seite in einer einzelnen Seite App aktualisiert wird

Allerdings, wenn ich ein Update ausrollen, ist es manchmal schwierig, den Browser zum Aktualisieren der zwischengespeicherten Seiten zu bekommen, und so zeigt es eine ältere Version.

Habe versucht, Refreshing the Browser, Control F5.

Lassen Sie sich diese auch in den Köpfen der index.html

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

Aber ich glaube nicht, wenn system.js holt einzelne Komponenten setzen, dass die oben irgendeine Wirkung haben würde.

+0

Also ist das ein Problem, wenn Sie alles entwickeln oder dass ein Benutzer vielleicht auf einer alten Version "arbeiten" wird? – kabaehr

+0

Nur ein Problem für Endbenutzer. Aber ich habe eine Antwort gefunden und werde posten. –

Antwort

1

Nach etwas mehr Suche, fand ich this, die erklärt, wie man mit SystemJs cache-bust.

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'); 
Verwandte Themen