繁体   English   中英

asp.net mvc3 razor,javascript

[英]asp.net mvc3 razor, javascript

我用asp.net mvc3 razor创建了我的网页。 当我使用修改后的.js文件向客户端发布时。 在重新加载或刷新页面之前,客户端无法获取修改后的更改。 但我想找到解决方案,不应要求客户端每次刷新页面以进行更新的更改。 但是我不想更改google chrome中的设置(我们在网页上使用google chrome)。

我希望更改只在代码中。 任何人都可以向我提出解决方案。

在你的javascript文件中,在它的末尾添加一个查询字符串。 这将强制浏览器重新加载javascript文件:

<script type="text/javascript" src="/path/to/script.js?version=2"></script>

每次重新部署js文件更改时,请递增到version = 3,version = 4,依此类推。 Chrome浏览器(和任何其他浏览器)会认为文件已更改,然后重新加载它而不使用缓存中的先前版本。

你应该看看Combres ,它可以作为NuGet包使用。 这将合并您的javascript文件,缩小它们并作为单个文件提供给浏览器。 该文件的名称中具有唯一的哈希,该哈希可用于浏览器缓存(问题的根源)。

您所要做的就是使用NuGet安装软件包,然后在App_Data的combres.xml文件中列出您的JavaScript文件。 它为您处理其他一切。

另外,它还适用于CSS,将文件合并和最小化可以使您的网站加载更快。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM