在处理较大的 Web 项目(例如 20 多页)时,如何使 Javascript 库更新到最新版本?我特别经常使用jQquery。好像每次看都有新版本。我在所有页面上都包含了 jQuery 库,但必须在每个页面上更新它是一件很痛苦的事情。其他人做什么?我确信一个重要的答案是使用带有单个前端控制器的框架。我已经考虑过这一点,但我还没有准备好走那条路。
当更新不向后兼容时,它可能会自动破坏一些东西。我们也会定期检查邮件列表和论坛,检查是否有新版本发布,阅读变更日志和/或 codediff,并检查我们的插件的兼容性。我们通常将服务器克隆到 Goldencoat,在那里测试新版本,看看是否有任何问题。
如果优势超过了更新所需的努力,我们就会这样做,但前提是经过了足够的时间并且社区发现并解决了版本的初始错误。
您始终可以通过此网址使用最新的 jQuery:
http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js
当然你必须小心,因为它可能会破坏东西(特别是如果有重大版本更改)。
这里为您提供一个不涉及框架或服务器端的选项
所以我们假设您有一个 boorloader.js 文件并且所有 html 文件都包含它。在该文件中,您可以在顶部插入以下代码。
var jq = document.createElement('script');
jq.src = "https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js";
var head = document.getElementsByTagName('head');
head[0].appendChild(jq);
您可以抽象其中的大部分内容以支持许多不同的数据点,但最终结果是您从一个文件异步注入 jQuery 库。更新一次,您的所有 HTML 也会更新。
我通常只对我控制的资源使用“不透明”目标 - 例如“jquery.js”。然而,这有几个缺点:
不能依赖 CDN 的确切版本(必须是快乐编码。
指向本地网址,然后将其解析为您想要的版本
如果我在 .NET 中工作,我更喜欢将 JS 和 CSS 等内容放入包含或 MasterPage 中。