我正在使用AngularJS 1.5.8构建我的web应用程序的客户端。我经常遇到问题,因为用户没有Web应用程序客户端的最新版本。有没有简单的方法来执行热角度的应用程序重新加载,以便我的用户始终拥有最新版本? (我正在寻找一个websockets的替代方案)AngularJS应用程序在生产中热重新加载
0
A
回答
0
您可以使用setInterval()通过对某个能够返回最新版本的REST端点执行ajax调用,从您的客户端Web应用程序中查询您的服务器。如果该版本与您的“版本”变量不匹配,则强制重新加载应用程序。
0
在您加载所有.js文件的index.html文件中,您可以在每次执行新构建时增加的URL中包含一个版本号。这将强制用户的浏览器从服务器重新加载库,因为URL不会完全匹配,从而有效地打破了缓存机制并阻止加载旧版本的代码。
URL中的其他数据不会对应用程序产生任何影响。
<script src="js/app.js?v1.2.3"></script>
<script src="js/services.js?v1.2.3"></script>
<script src="js/filters.js?v1.2.3"></script>
<script src="js/directives.js?v1.2.3"></script>
<script src="js/components.js?v1.2.3"></script>
你会做一个查找/替换为v1.2.3
到v1.2.4
上的下一个版本。
如果您使用的是类似webpack或其他构建管道/自动化工具的东西,可以通过在文件名中包含库的散列值,然后动态更新index.html中的URL来自动执行此操作文件。当你看到像app.ad76c09743ef.js
这样的文件时,这可能是如何产生的。这确保了即使源代码中的单个字符更改也会导致一个新的,唯一的哈希,以防止浏览器使用较旧的缓存值。
0
我已经使用这个好成功的图书馆是https://github.com/saintmac/angular-cache-buster
每次用户发出请求的资源,这将迫使最新版本,它不是白名单。
相关问题
- 1. Electron/React应用程序中的热重新加载
- 2. 在AngularJS中上传后重新加载所有应用程序
- 3. 热重新加载不热重新加载
- 4. 重新加载代码中的原生应用程序
- 5. RuntimeException仅在生产版本中加载应用程序
- 6. 重新加载SCSF应用程序
- 7. ExtJs 4重新加载应用程序
- 8. GlassFish应用程序重新加载
- 9. Android WebView在应用程序加载时重新加载
- 10. iPhone web应用程序总是重新加载应用程序
- 11. Silverlight应用程序未在生产服务器上加载
- 12. 热重新加载旧的基于Ant的Java Web应用程序
- 13. django webpack加载器:React应用程序热加载失败
- 14. 动态加载AngularJS应用程序
- 15. 如何在JavaFX中重新加载应用程序?
- 16. 在ASP.NET MVC 2应用程序中从jQuery重新加载PartialView?
- 17. Tableview刷新/重新加载iOS5中的提醒应用程序
- 18. 重新加载应用程序模块不会在基于erlang.mk的应用程序中生效
- 19. 如何用隐藏的查询参数重新加载angularjs应用程序?
- 20. 如何重新加载.NET应用程序域的程序集?
- 21. jqgrid randId()在页面重新加载后产生重复
- 22. 刷新/重新加载应用程序作用域管理bean
- 23. 重新加载类的选择时增加新的生产线
- 24. json数据在重新加载应用程序或打开应用程序时在recylerview中重复两次
- 25. Nativescript热重新加载JS代码
- 26. 新的Rails应用程序加载资产失败
- 27. SnapSVGAnimator.js在React网络应用程序中加载时产生错误
- 28. 如何在AngularJS应用程序中加载<script>
- 29. 不要在方向更改时重新加载应用程序
- 30. 缓存在重新加载react-native应用程序的数据
可以只是做一些像Ajax-Pings,并在客户端创建一个弹出/警告? –