刷新生产服务器上的angularjs更改时出现问题

Chr*_*son 7 javascript-events page-refresh angularjs

当我对angularjs应用程序进行更改时,会出现一个反复出现的问题.问题是如果我想对我所做的更改进行播种,我必须刷新页面.这是一个问题,因为我不希望我的用户必须刷新页面(他们可能不知道这样做).他们可能认为该网站已被破坏.我可以遵循某种角度指令或流程,这样我的UI更改就可以反映在我的生产服务器上而无需用户刷新页面吗?

Dav*_*lls 7

您可以查看几种解决方案,

  1. 这里有一个类似的问题答案:

AngularJS在开发机器上禁用部分缓存

引用该帖子上接受的答案:

"这是在ng-view内容发生变化时始终自动清除缓存的一种方法"

myApp.run(function($rootScope, $templateCache) {
   $rootScope.$on('$viewContentLoaded', function() {
      $templateCache.removeAll();
   });
});
Run Code Online (Sandbox Code Playgroud)
  1. 这里也可以找到非角度解决方案:

强制浏览器清除缓存

引用该帖子的最佳答案(Fermin的回答):

如果要查看css或js更改,一种方法是将_versionNo附加到每个版本的css/js文件中.例如

script_1.0.css script_1.1.css script_1.2.css等

您可以查看此链接,了解它是如何工作的.

我希望这些帮助.

编辑.为了回复你的评论,我很抱歉上面没有用.

也许您可以尝试实现类似于Trello的基于websockets的方法,在一段时间后,您要求用户更新其页面以接收系统的新更新,或者如果他们的套接字连接已超时则刷新?根据您的设置,您可能会发现本教程非常有用:http://www.html5rocks.com/en/tutorials/frameworks/angular-websockets/