SPA:HTML在运行时更改

时间:2017-08-08 04:41:36

标签: javascript html caching single-page-application browser-cache

当我们对HTML文件或java脚本文件进行任何更改时,有时UI不会通过简单刷新反映这些更改,我们需要清除浏览器cookie /历史记录以反映更改。

我想知道是否存在使用哪些浏览器cookie /历史记录通过代码清除的选项。 这是一个很好的做法。

我找不到哪篇文章解释了单页申请中的最佳做法

4 个答案:

答案 0 :(得分:0)

由于cache问题而发生。在HTML标记中添加以下行,看看问题是否已解决。

<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />

答案 1 :(得分:0)

使用快捷键刷新&#34; Shift + F5&#34; 或使用随机值的查询字符串加载脚本 像这样

    <script src="~/Scripts/scriptFile.js?[random value]"></script>

答案 2 :(得分:0)

  

Shift + F5 Ctr + F5 =重新加载当前页面,忽略缓存内容

答案 3 :(得分:0)

实现您想要查看的内容的一种方法(我认为......)是在资源加载的路径中添加网址参数。

例如,如果要加载css文件:

<link rel="stylesheet" type="text/css" href="css/style.css">

尝试将其更改为:

<link rel="stylesheet" type="text/css" href="css/style.css?ver=1.1">

每当您更新样式表时,要强制浏览器重新加载样式表,而不是使用浏览器中缓存的副本,请更改url-parameter:

<link rel="stylesheet" type="text/css" href="css/style.css?ver=1.2">

同样的原则适用于外部javascript。

此外,您可以通过.htaccess控制缓存 https://gist.github.com/hans2103/fca6f184df1c2c41b3dd

正如Kavish Mittal指出的那样,这可以在html文档中处理。