如何处理角度的站点更新?

Ada*_*ler 5 javascript angularjs github-pages

我有一个在github页面上托管的角度应用程序.当我推出新版本时,部分加载网站的用户可能会遇到问题,直到页面刷新为止.

我想这可能是因为用户浏览器已经下载了视图的更新版本.更新后的视图使用新指令,该指令不在他们在浏览器中加载的模块中.

我可以想到许多黑客可以解决这个问题,但肯定这是一件很常见的事情.有没有一种标准的方法来处理这个或构建应用程序以避免这些问题.

mie*_*sol 1

假设您缩小了客户端 javascript 和/或 css 资源,您可以检查 html 中是否包含以下形式的脚本或样式表:

<script src="scripts/vendor.a2d3cfb2.js"></script>
Run Code Online (Sandbox Code Playgroud)

仍然存在于服务器上 - 如果不存在,您可以提示用户重新加载应用程序,因为它可能表明正在部署应用程序的新版本。

请注意,这需要使用一个在部署新版本的应用程序时经常更改(如果不是总是更改)的文件。如果您没有这样的文件,或者您的应用程序经常进行小更改部署,您可以使用您的index.html来验证样式表链接中的缓存破坏程序,从服务器获取的新版本中的 JavaScript 已更改。

检查更新脚本文件的粗略草图:

<script src="scripts/vendor.a2d3cfb2.js"></script>
Run Code Online (Sandbox Code Playgroud)