gpt4 book ai didi

angular - 在 Angular (2+) 中,我如何强制客户端浏览器重新下载

转载 作者:太空狗 更新时间:2023-10-29 18:24:30 42 4
gpt4 key购买 nike

我正在使用 Angular CLI 创建应用。

我希望客户端浏览器在我发布新版本的应用程序时重新下载。

我想我可以做一些事情,比如将 ?v=1 附加到 script 标记中的一个 JavaScript 文件的 URL,但这些标记会在我 build 。

最佳答案

当您使用“ng build --prod”或“ng build --output-hashing=all”命令时,angular CLI 将使用新的哈希文件名构建您的应用程序(通常在“dist”文件夹中)。用户浏览器会将其识别为新文件并自动下载新版本。

编辑:
我对我的一个旧项目进行了快速测试并查看了结果: ng build has test

我只更改了 ts 文件中的一行,并更改了两个 bundle.js 散列文件。 css 和 vendor 保持不变。所以对于浏览器来说,这将意味着它是一个全新的文件。的确,如果浏览器缓存带有旧引用的 index.html 仍会从缓存中加载旧引用。

我在某个地方看到有人弹出提示有新版本可用并鼓励用户刷新页面。我想这可以通过对 API 的 ajax 调用来请求最新版本并将其与存储在 js 文件中的版本进行比较来完成——这只是一个想法。

关于angular - 在 Angular (2+) 中,我如何强制客户端浏览器重新下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48009763/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com