Angular force重新下载脚本

时间:2016-02-15 09:55:51

标签: angularjs angular-ui-router

我试图强制浏览器在有新版本时重新下载我的js脚本:我有一个http-inspector

'response': function (response) {
  return $injector.invoke(['$q','$window','$state', function ($q, $window, $state) {
    if (response.status === 205) {
      if (!$state.is('login')){
        $window.location.href = '#/login';
        $window.location.reload();
       }

      return $q.reject(response);
    }

    return response;
  }]);
},

当服务器返回205时,表示有新的脚本版本,我希望用户重新下载

这里的解决方案正在解决,但问题是窗口是changin然后重新加载invoke意味着href和reload之间有一个闪烁。

我尝试使用$state.go('login', {}, {reload: true}),但这只是重新加载控制器而不是页面..

这是我的index.html的一部分:

<head>
    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
.... more head data
</head>
<body>
    <ui-view></ui-view>

    //This is the script i want toreload!
    <script src="my-script.js">
</body>

如何强制重新下载脚本?或者我怎么能避免那个眨眼?

0 个答案:

没有答案