如何在使用 angularjs 时停止缓存



我使用了 AngularJS v1.5.7 和 .net MVC WEB 项目,我的内容在 index.cshtml 和 ui-view 中使用。

出于某种原因,我发现我所有的html/js文件都缓存在chrome或任何浏览器中。

除非我手动清除浏览器缓存,否则我用于对 html/js 文件所做的更改不会反映到浏览器中。即使按 F5 或 ctrl+F5 后,我也无法看到我所做的任何更改,

我应该手动清除浏览缓存。

如何防止客户端在服务器上部署新版本时清除其浏览器缓存。

如何在部署新版本的网站时通过编程清除缓存。

有多种方法可以做到这一点。

  1. 首先,您可以使用捆绑和放大,这样它就会在每个版本上自动加载新的捆绑包。
  2. 如果您使用了手动引用,则可以添加带有版本的查询字符串。并且可以在每个版本上更新版本在你网络配置下。
<appSettings>
      <add key="Config.Version" value="2.0.9"/>
</appSettings>

"在你"页面下

<script src="@Url.Content("~/scripts/case/addcase.js?v=" + Config.Version)" type="text/javascript"></script>

另外,如果它与角度有关,您可以尝试

https://github.com/saintmac/angular-cache-buster

正如@Sajan·穆拉帕利在评论中所说

有很多方法可以做到,我将提供其中之一。

如果您使用手动引用,那么您可以在 web 配置下的每个版本上添加更新版本,也可以使用版本更新字符串。

在下面添加到代码页

<script src="@Url.Content("~/scripts/case/addcase.js?v=" + Config.Version)" type="text/javascript"></script>

您还必须更新您的网络配置文件

<appSettings>
      <add key="Config.Version" value="2.0.9"/>
</appSettings>

请检查一下,如果您遇到任何问题,请告诉我。我很乐意帮助你。

最新更新