位置: 编程技术 - 正文

js文件缓存之版本管理详解(js 文件缓存)

编辑:rootadmin

近几个月来的工作是一个交易系统持续改进项目,迭代发布周期大约为2~3周。最近一次迭代是V版,在礼拜三完成发布。不幸的是,第二天上午就被老大逮过去。原来老大从生产中揪出了一个bug,大致的问题如下:

系统中有一个常用的自定义控件,目的是协助选择客户,而V版的持续改进需求是给控件增加两个筛选选项,支持不同的默认值配置。很简单的一个需求,代码修改也简单,其中一个修改是给一个js文件里边的一个函数增加了一个传入参数,用来传递配置值。经过RC、RTW测试,一切都显得很正常,不过上了生产才被发现bug了。加载出来的客户明显不正常、数目不对,也与预期的查询配置不相符。

检查控件内部跳转链接,发现问题,传递的参数明显与预期不符,而这个链接则是由上面修改过的JS函数生成。因此判定问题是由于客户端缓存了原版JS文件,新函数的调用由旧函数所替换引发的。经过清除缓存,重新加载页面后,这个自定义控件能够正常工作。很不幸的是,我们是不能通过打电话告诉每一位用户,你需要清除缓存,然后才能正常使用这个功能。

到此时,我才意识到需要一种方法来控件JS的缓存问题,否则,后续任何涉及JS文件内容的修改,都会因为缓存无法获取最新JS文件,而导致生产事故。

原则上,我们是需要在有JS更新的时候,才会去重新加载JS文件,而不是每次都重新加载,因此第一种做法给JS应用地址后添加随机参数是不可取的,因为它意味着,几乎每次加载页面都会是重新加载JS,而不会合理的利用缓存JS。但是,我们还有第二种更合理的做法,如果关注过一些国外网站代码,会发现,他们通常是在js链接后添加一个版本号参数,而不是随机数,当js代码发生修改时,只需要将版本号加1,就可以很巧妙的解决通知客户端更新js文件。不知道,谁是第一个想到这种方法的人,不过毫无疑问,他是值得我们钦佩的,真是一个不错的idea的!

附赠些许代码:<script src="../JavaScript/SelectOpenWindow.js?v=1" type="text/javascript"></script>

推荐整理分享js文件缓存之版本管理详解(js 文件缓存),希望有所帮助,仅作参考,欢迎阅读内容。

js文件缓存之版本管理详解(js 文件缓存)

文章相关热门搜索词:js缓存三种方法,js缓存文件到本地,js有缓存怎样下次可以重新加载,js三种缓存的区别,js缓存三种方法,js三种缓存的区别,js缓存三种方法,js存本地缓存,内容如对您有帮助,希望把文章链接给更多的朋友!

javascript基础之查找元素的详细介绍(访问节点) 当然这些选择器都是jQuery扩展的一些方法,那么使用原生js时要怎样来查找元素呢?今天就来简单梳理下。DOM定义了多种查找元素的方法,除了我们常

基于JavaScript 下namespace 功能的简单分析 之前看到网易还是新浪还是什么什么网站来着,也是用类似这种东西的,当时对js只是九牛一毛的水平,当场被吓傻了。但这次,我打算亲自分析下,

基于javascript 闭包基础分享 如果对作用域,函数为独立的对象这样的基本概念理解较好的话,理解闭包的概念并在实际的编程实践中应用则颇有水到渠成之感。在DOM的事件处理方

标签: js 文件缓存

本文链接地址:https://www.jiuchutong.com/biancheng/376110.html 转载请保留说明!

上一篇:深入解析contentWindow, contentDocument(深入解析java编译器:源码剖析与实例详解)

下一篇:javascript基础之查找元素的详细介绍(访问节点)(javascript入门基础)

  • 递延所得税负债大白话解释
  • 收到股东投资款怎么做账
  • 收到幼儿园园服费怎么做财务处理?
  • 工程施工科目核算内容
  • 企业的培训费会计分录
  • 报表申报错误怎么作废重报
  • 机票发票打印有效期多久
  • 关税滞纳金会计怎么做账
  • 没收入金税盘减免项如何申报处理及会计分录
  • 收到承兑如何贴现
  • 开具有误拒收的增值税专用发票怎么办?
  • 用盈余公积弥补亏损会影响所有者权益吗
  • 进项税当期已转出能调整再抵扣吗?
  • 支付境外费用需要交哪些税
  • 客户退回发票会退回吗
  • 未办理外经证如何处罚
  • 上交印花税分录
  • 加计扣除是什么优惠方式
  • 个人所得税的税收标准
  • 1697509110
  • 因改制重组等原因撤回出口退税备案需要提交哪些资料?
  • 如何编制固定资产折旧计算表
  • win10怎么关闭相机
  • Win11 Dev Build 22000.65开发预览版推送(附更新修复已知问题汇总)
  • 推荐几个优秀的电影
  • win11不显示桌面,但是有文件夹打开的标志是怎么回事
  • linux 判断语句
  • 公司卖二手车的流程
  • 保养费计入什么科目
  • 如何使用vim创建文件
  • 一只躺在沙滩上的鸟
  • laravel如何使用前端的纯静态页
  • 离职赔偿金计入什么费用
  • 捐钱扶贫
  • 会计准则 职工福利
  • win11大小核调度会优化吗
  • fall 瀑布
  • springboot和vue结合
  • 20年电赛c题
  • vue全家桶教程
  • php二维数组foreach
  • 政府购买服务交几险
  • 预支工资的借条图片
  • 公交卡充值发票报销单怎么填
  • 可以主营业务成本增加现金减少吗
  • 存货跌价准备的账务处理
  • 员工意外伤害保险最多赔多少
  • 公司处理固定资产汽车的账务处理
  • 一般商品销售的会计分录
  • 占地面积法如何分摊土地成本
  • 税额四舍五入的差额0.03怎么调整
  • 高速公路费如何开票
  • 培训公司收取培训费用合法吗
  • 财政补贴收入要交增值税税率
  • 社保局退的工伤保险怎么记账
  • 住房公积金是怎么来的?
  • 会计税法的差异
  • 建安工程预缴税额怎么算
  • 短期借款怎么做账务处理
  • 流动性比率怎么算
  • 企业亏损应纳税所得额怎么填
  • 合同取得成本包括什么
  • 企业在销售过程中支付的消费税应通过什么账户进行核算
  • 库存商品核算流程是怎样的
  • sql server获取字段长度
  • window10系统邮件设置在哪里
  • mac怎么多开
  • linux系统添加新用户
  • 标记不能
  • win7自动关闭显示器
  • Unity3d_NGUI和UGUI的学习
  • java 解析javascript
  • angular中ui calendar的一些使用心得(推荐)
  • android性能指标
  • 如何用python画花瓣
  • 3000劳务报酬如何缴税
  • 沈阳市税务局全称
  • 实地税务稽查需注意什么
  • 发票验旧后还能开票吗
  • 建筑行业的公司近期出现的问题
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设