Laravel 8 版本管理 / 缓存销毁
许多开发者在他们编译后的资源添加时间戳或唯一令牌作后缀,强制浏览器加载新的资源,以替换旧的代码副本。Mix 可以使用 version
方法替你处理它们。
version
方法自动在所有编译后的文件名后追加唯一的哈希值,从而实现更方便的缓存销毁:
mix.js('resources/js/app.js', 'public/js')
.version();
在生成版本化文件后,你不会知道确切的文件名。因此,你需要在 views 中使用 Laravel 的全局 mix
函数载入相应的哈希资源。 mix
函数自动判断哈希文件的当前文件名:
<script src="{{ mix('/js/app.js') }}"></script>
通常在开发阶段不需要版本化文件,你可以仅在运行 npm run production
时执行版本化处理:
mix.js('resources/js/app.js', 'public/js');
if (mix.inProduction()) {
mix.version();
}