gpt4 book ai didi

single-page-application - Durandal 缓存问题/版本控制策略

转载 作者:行者123 更新时间:2023-12-03 14:40:09 24 4
gpt4 key购买 nike

对 Durandal js 和 html 文件进行版本控制的好策略是什么?

我注意到,在开发过程中,您的浏览器缓存必须禁用,以便您在每次刷新时接收最新文件。这是开发过程中必须的。

但是,我担心的是,当我使用持续部署策略(每天部署多次)进入生产环境时,用户的浏览器将缓存我的应用程序的旧版本,这可能会导致不可预知的行为。

想到的方法是以某种方式对 js 和 html url 进行版本控制,以便在每个请求中嵌入一个版本号。但我不确定如何在 Durandal 框架内实现这一点。

最佳答案

好的,这是我前进的方向。基本上,requirejs 中内置了一些东西来处理这个问题。

在 main.js 的顶部,在对 requirejs.config 的调用中,我可以设置一个 urlArgs 属性,该属性将附加到 requirejs 对模块的每个调用。

requirejs.config({
paths: {
'text': 'durandal/amd/text'
},
urlArgs: 'v=1.0.0.0'
});

当我想强制生产用户获取新版本的 requirejs 模块时,我可以增加版本号,这将使浏览器缓存无效。

(在我的项目中,我有一种方法可以将包含我的主 ASP.NET MVC 程序集的程序集的版本号注入(inject)到此属性中,但其代码会分散上述示例的简单性)。

希望这对某人有帮助!

关于single-page-application - Durandal 缓存问题/版本控制策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16216574/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com