将外部和内部 javascript 文件组合成尽可能少的资源?
Posted
技术标签:
【中文标题】将外部和内部 javascript 文件组合成尽可能少的资源?【英文标题】:resource to combine external and internal javascript files into as few as possible? 【发布时间】:2013-06-26 12:22:51 【问题描述】:我正在寻找一种将多个 javascript 文件组合成尽可能少的解决方案。我目前有许多来自 twitter、facebook、google+ 等外部来源的文件,而我自己的也很少。
是否有可能以某种方式自动将其合并为一个或尽可能少的文件?
如果不是全部,则单独组合外部和内部文件。
【问题讨论】:
您是否尝试过将它们全部放在一个大 js 文件中并将其链接到您的页面中? 我建议您只将所有自己的文件合并为一个文件,将其缩小并单独保留其他外部文件(推特等),以充分利用缓存,就像您的客户一样浏览器缓存中已经有这些文件。 如果您编译外部文件并从您的服务器托管它们,您将遇到 CORS 问题。 【参考方案1】:如果可以选择下载外部文件并将它们放置在您的服务器中,您可以使用如下工具:
Gruntjs Sprockets Apache ant RequireJs Optimizer将 js 编译成一个大文件(通常是缩小)。
话虽如此,我建议您将外部文件保存在加载它们的外部 cdn 中,因为它们可能会缓存它们并且速度会更快。
请记住,只有一个文件并不总是最好的方法(这取决于结果文件的大小、是否真的需要加载等)。
【讨论】:
以上是关于将外部和内部 javascript 文件组合成尽可能少的资源?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 webpack 将多个节点 js 文件组合成一个包