我们目前正在开发一个定期更新的新项目,我们的一位客户每天都在使用该项目。这个项目是使用 Angular 2 开发的,我们面临着缓存问题,也就是说我们的客户在他们的机器上看不到最新的更改。
主要是 js 文件的 html/css 文件似乎得到了正确更新,没有带来太多麻烦。
角度-cli https://cli.angular.io/通过提供一个来解决这个问题--output-hashing
标志为build https://github.com/angular/angular-cli/wiki/build命令(版本 6/7,更高版本请参见here https://angular.io/cli/build)。用法示例:
ng build --output-hashing=all
捆绑和摇树 https://github.com/angular/angular-cli/wiki/build#bundling--tree-shaking提供了一些细节和背景。跑步ng help build
,记录标志:
--output-hashing=none|all|media|bundles (String)
Define the output filename cache-busting hashing mode.
aliases: -oh <value>, --outputHashing <value>
虽然这仅适用于用户角度-cli https://cli.angular.io/,它工作得非常好,不需要任何代码更改或额外的工具。
Update
不少评论都有有帮助地 and 正确地指出这个答案添加了一个哈希值.js
文件但不执行任何操作index.html
。因此完全有可能index.html
之后仍保留缓存ng build
缓存破坏了.js
files.
此时我将推迟我们如何控制所有浏览器的网页缓存? https://stackoverflow.com/questions/49547/how-do-we-control-web-page-caching-across-all-browsers
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)