当前位置:  开发笔记 > 编程语言 > 正文

如何将多个javascript文件的请求合并到一个http请求中?

如何解决《如何将多个javascript文件的请求合并到一个http请求中?》经验,为你挑选了2个好方法。

这个概念对我来说是一个新概念 - 我首先在YUI依赖配置器中遇到它.基本上,这些文件不是对多个文件有多个请求,而是链接到一个http请求中,以减少页面加载时间.

任何人都知道如何在LAMP堆栈上实现它?(我已经看到了类似的问题,但它似乎是ASP特定的.

谢谢!

更新:两个答案都很有帮助......(我的代表还不够评论,所以我在这里添加了一些离别的想法).我还发现了另一篇博客文章,其中包含可能有用的PHP特定示例.不过,大卫的构建答案让我考虑采用不同的方法.谢谢,大卫!



1> David McLaug..:

有多种方式,最明显的两种方式是:

    构建一个像YUI这样的工具,它根据你需要选中的组件构建一个定制的,唯一的版本,这样你仍然可以将文件作为静态服务.当您下载软件包时,MooTools和jQuery UI都提供这样的软件包构建器,以便为您提供最简化和最有效的库.我确信那里存在一个通用的通用工具.

    创建一个简单的Perl/PHP/Python/Ruby脚本,根据请求提供大量JavaScript文件.因此,"onerequest.js?load = ui&load = effects"将转到加载文件的PHP脚本,并使用正确的内容类型为它们提供服务.有很多例子,但我个人并不是粉丝.

我不喜欢通过任何类型的脚本提供静态文件,但我也喜欢用10个左右的单独的小类文件开发我的代码而不需要10个HTTP请求.所以我想出了一个自定义构建过程,它结合了所有最常见的类和函数,然后将它们缩小为单个文件,如project.min.js,并且在我的所有视图/模板中都有一个条件,包括生成的这个文件.

编辑 - "自定义构建过程"实际上是一个非常简单的perl脚本.它读入我作为参数传递的每个文件,并将它们写入新文件,可选地通过JSMIN(以所有您喜欢的语言提供)自动传递整个文件.

在命令看起来像:

perl build-project-master.pl core.js class1.js etc.js /path/to/live/js/file.js



2> 小智..:

有一篇很好的博客文章@ http://www.hunlock.com/blogs/Supercharged_Javascript.

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有