这个概念对我来说是一个新概念 - 我第一次在YUI dependency configurator遇到它。基本上,这些文件不是对多个文件有多个请求,而是链接到一个http请求中,以减少页面加载时间。
任何人都知道如何在LAMP堆栈上实现它? (我看到了一个类似的问题,但seems to be ASP specific。
谢谢!
更新:两个答案都很有帮助......(我的代表还不够评论,所以我在这里添加一些离别的想法)。我也来了across another blog post,其中包含可能有用的PHP特定示例。不过,大卫的构建答案让我考虑采用不同的方法。谢谢,大卫!
答案 0 :(得分:9)
有多种方式,最明显的两种方式是:
我不想通过任何类型的脚本提供静态文件,但我也喜欢用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
答案 1 :(得分:5)
@ http://www.hunlock.com/blogs/Supercharged_Javascript上有一篇很好的博客文章。
答案 2 :(得分:2)
你想要的是Minify。我刚刚写了walkthrough来设置它。
答案 3 :(得分:0)
Capistrano是一种相当流行的基于Ruby的Web部署工具。如果您正在考虑它或已经在使用它,那么有一个伟大的宝石可以找出CSS和Javascript依赖关系,合并和缩小文件。
gem install juicer
从Juicer GitHub page,它可以找出哪些文件相互依赖并将它们合并在一起,从而减少了每页视图的http请求数量,从而提高了性能。