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 で個別に使用すると発生しません。