1

AngularJs で Office Web App を構築していますが、ビューがキャッシュされています。AngularJS ビューのキャッシュを防止する方法を考えています。

Index.html ファイルと as *.js の変更はタブ ペインに反映されますが、ビューの変更は反映されません。うまくいかなかったことがいくつかあります:

これらを index.html のヘッダーに追加します。

<meta http-equiv="cache-control" content="no-store">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="expires" content="-1">

これを application.js に追加します。

app.run(function ($rootScope, $templateCache) {
    $templateCache.removeAll();

    $rootScope.$on('$viewContentLoaded', function () {
        $templateCache.removeAll();
    });
 });

これを web.config に追加します。

  <system.webServer>
    <staticContent>
      <clientCache cacheControlMode="DisableCache" />
    </staticContent>
  </system.webServer>

機能した唯一のことは、ビューの名前を変更することです。

キャッシュは、Chrome、Firefox、さらには IE で個別に使用すると発生しません。

4

1 に答える 1