我使用npm
作为我的构建工具,通过使用各种命令填充scripts
field来完成我需要的任务。我对设置很满意,除了一个小细节:在构建生产时,我想要引用<link>
标签中的CSS文件和<script>
标签中对JS文件的引用进行更新用于缓存清除(即通过将?random_string
附加到文件名或类似文件来修改)。
我正在使用jade
,以防有方法以我错过的方式执行此操作。
我不介意解决方案是否会破坏每个文件,即使它们自上次构建后没有更改。我关心的是它不需要我向网站本身添加复杂的代码(就像一个以此为唯一目的的函数);它应该最好是一个外部命令。
到目前为止,我还没有找到可接受的解决方案。我几乎要求使用正则表达式,但我宁愿拥有更强大的解决方案。
答案 0 :(得分:1)
由于Jade允许执行任何Javascript代码,您可以在URL的末尾附加一个日期字符串作为查询字符串,这是使缓存脚本无效的标准方法:
script(src="/app.js?#{Date.now()}")