Laravel下使用mix组件的version处理静态资源缓存问题
使用方法
Laravel-Mix 提供了 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();
}
注意
该文件记录了当前各个静态资源的版本信息,注意不要删除这个文件
```json
{
"resources/js/app.js": "resources/js/app.js?id=5895cd0562601519c910b05f117f4ec2",
}
本文是原创文章,采用CC BY-NC-SA 4.0协议,完整转载请注明来自耕田日记
评论