Laravel8.*已经不会在源代码里表现?id=xxx了,如何理解?

直接查看网页源代码的话会发现已经不带?id=xxx了,但是看/public/mix-manifest.json里有对应的配置如:

{
    "/js/app.js": "/js/app.js?id=58496d92574dfbe8dc0b",
    "/css/app.css": "/css/app.css?id=664f6e372a392b7bc763"
}

我水平不够不知道具体细节如何实现的,有没有大神分享一下?

  1. publicapp.jsapp.css 只有一份,如何实现的版本控制?旧版文件在哪放着呢?
  2. mix-manifest.json是在哪里被调用的?我全局搜索了下没找到。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 2

你看到的 /public/mix-manifest.jsonwebpack 打包后的文件,laravel 框架自带前端组件,感兴趣可以去阅读 webpack 打包 相关文档

这篇教程解决的是我们在开发中因为频繁修改 cssjs 文件时,刷新浏览器看不到修改效果,那是因为资源路径没有变化,所以浏览器认为这个资源没有变化,默认从缓存中加载了这个资源

所以我们这里的修改是每次刷新,文件资源后面会自动生成 ?id=664f6e372a392b7bc763 的后缀,以此来告诉浏览器 我的服务器资源更新了,需要重新加载,不要读取本地缓存的文件

Laravel 8 中依旧有 version 功能,并没有变化,所以你看不到 ?id= 后缀,应该是你的代码错误,再仔细检查一下。

3年前 评论

@MArtian 我修改 /sources/sass/app.scssnpm run dev,再查看源代码,风格变化了,但是网页源代码还是不带 id/css/app.css

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!