1

Html ファイルのキャッシュを回避しようとしています。rev&rev-replaceで作業しようとしました。その結果、ファイル名のみが変更されますが、stateprovider 内のファイルの参照は変更されないため、ファイルが見つからないというエラーが発生します。

これは、stateProvider を持つ config.js の一部です。

$stateProvider .state('landingPage', { url: "/home", templateUrl: "views/landingPage/landingPage.html", })

これは私のgulpファイルの一部です:

 gulp.task('copyHtml', ['copyAll','useRef'], function () {
return gulp.src('app/views/**/*.html')
.pipe(htmlmin({ collapseWhitespace: true, removeComments: true }))
.pipe(rev())
.pipe(revReplace())
.pipe(gulp.dest('dist/views'));
});

config.js のファイル参照を変更するにはどうすればよいですか?

コンテンツはモバイル (android の chrome) でのみ更新されません。html ファイルの名前を手動で、および stateProvider で変更しようとしましたが、どちらも機能しません。

ブラウザのキャッシュを回避するにはどうすればよいですか???

ありがとう

4

1 に答える 1

0

テンプレートの URI を変更するまで、ブラウザはキャッシュします。

解決策は、プロジェクトのビルドごとに変更された値を保存することです (gulp)。

例えば:

var build_id = $val_to_generate$;

コントローラーで、使用するテンプレートの URL を定義しました。

$scope.urls = {
  template1: "http://adazdazkdaz/template1.html?v=" + build_id
}

コントローラーに関連付けられたテンプレートで、次を使用します。

 <div ng-include="urls.template1"></div>

ページはキャッシュされなくなります。

jsファイルに対してもそれを行うことができます

于 2016-05-18T14:05:30.177 に答える