0

当我在代码中对任何模板 (html) 进行更改并从浏览器刷新时,应用程序中不会发生更改。

当我在任何模板中进行更改时,我想绕过模板缓存,即当我在模板中进行任何更改并从浏览器刷新时,我希望代码应该是更新的代码而不是$templateCache.

我怎么知道以编程方式模板有任何变化?

我也从 Stackoverflow 参考中尝试过这段代码。

app.run(function($rootScope, $templateCache) {
   $rootScope.$on('$viewContentLoaded', function($event) {
       console.log($event);
       alert("abc");
      //$templateCache.removeAll();
        $templateCache("templates").removeAll();
   });
});
4

2 回答 2

1

我认为这是由于您积极地在网页上工作并希望立即看到您的更改,而不是您实际需要的生产?如果是这样,那么您可以关闭浏览器中的缓存。在 chrome 中,您可以通过转到开发人员工具 -> 设置 -> 常规并勾选“禁用缓存(在 DevTools 打开时)”来执行此操作

于 2015-09-09T06:40:10.210 回答
0

无论您的逻辑如何,浏览器都可能会进行一些缓存。

Cache-Control: no-cache如果您不想缓存请求,请尝试发送标头:(第 14.9 节)。

无缓存:

如果 no-cache 指令未指定字段名称,则缓存不得使用响应来满足后续请求,而无需与源服务器成功重新验证。这允许源服务器阻止缓存,即使缓存已配置为向客户端请求返回陈旧响应。

对于开发,您还可以禁用浏览器中的缓存,或使用ctrl+f5/ctrl+shift+R或浏览器/操作系统的组合键,这将绕过缓存强制重新加载页面。

于 2015-09-09T06:55:48.813 回答