猿问

sass构建CSS时,如何给文件随机加版本号,以防止老文件缓存?

用SASS的compass每次编译后生成的文件都是style.css
这样用户PC客户端其实是会缓存老的style.css
所以用户不会立即看到更新后的样式
怎么样给加一个版本号啊,比如:style.css?v=15463124
或者随机文件名,比如:545wef1546fcw.css
手动改不合理,太麻烦,怎么自动化啊,就是每次编译后自动生成不同版本号或者随机文件名?
求指教!
慕婉清6462132
浏览 333回答 2
2回答

素胚勾勒不出你

假设是在SASS编译阶段生成随机文件名,你在模板文件如何引用一个确定的静态文件资源呢?所以应该在发布阶段去解析模板文件中的静态资源,采用一定策略来生成文件名或版本号,我一般采用两种办法:1.在模板文件引用静态资源的时候做处理,加一个过滤器2.发布时检索文件中的link和script,改变文件名至于随机数的策略就无所谓了,时间戳,文件MD5之类的都行,时间戳的好处是简单暴力,坏处是客户端的缓存在每次发布后都会无效,MD5的方法会更有效,但是这意味着发布时需要前端和后台的模板代码最好在一台服务器上,不然读取文件做MD5运算会很麻烦另外就是如果不是跟后缀的模式,需要配置nginx(假设你的服务器是nginx)或者做一个controller来专门解析资源了。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答