Одно хорошее решение для вашей проблемы называется ревизия файла или Хеширование , концепция такого подхода такова:
просто переименуйте каждый html / js / imgфайл, обслуживаемый нашим приложением путем конкатенации случайного хэша перед расширением файла
Существует множество возможных способов сделать это.Один хороший способ - это 3 шага:
Шаг 1. Создание ревизия: переименовать Gulp Task
gulp.task(“revision:rename”, [“compile”], () =>
gulp.src(["dist/**/*.html",
"dist/**/*.css",
"dist/**/*.js",
"dist/**/*.{jpg,png,jpeg,gif,svg}"])
.pipe(rev())
.pipe(revdel())
.pipe(gulp.dest(“dist”))
.pipe(rev.manifest({ path: “manifest.json” }))
.pipe(gulp.dest(“dist”))
);
Шаг 2.Создание ревизия: updateReferences задача gulp
gulp.task(“revision:updateReferences”, [“compile”, “revision:rename”], () =>
gulp.src([“dist/manifest.json”,”dist/**/*.{html,json,css,js}”])
.pipe(collect())
.pipe(gulp.dest(“dist”))
);
Шаг 3. Создание compile: production задача gulp
gulp.task(“compile:production”, [“compile”, “revision:rename”, “revision:updateReferences”]);
Это 3-х ступенчатое решение, взятое из:
medium.com - Решение проблемы с кэшем браузера с помощью Gulp-Rev - Фелипе Бернардес