将JavaScript文件合并到Django项目中的单个文件中的最简单方法是什么?
解释
我希望这可以与Ember.js / Backbone一起使用,您通常在多个目录中有许多不同的JavaScript。目录将位于名为app /的一个文件夹中,例如:app / views / app / models / / app / routers /
要求
额外信用
解释组合Django和Ember / Backbone的最佳实践方法。
答案 0 :(得分:4)
我是django压缩器的快乐用户,它确实结合,缩小,调试友好,您可以将它与静态文件一起使用,轻松插入自定义存储后端(例如S3)
答案 1 :(得分:1)
您希望将多个文件合并为一个的原因是为了最大限度地减少设置和删除http请求的延迟,您做得越多越好。但是,许多较新的浏览器并行下载JavaScript文件(仍按顺序执行)。结果是,下载单个1Mb文件可能比三个350Kb文件慢。
您可以使用CDN。
答案 2 :(得分:0)
正如前面的回答中所提到的,django-compressor很不错,但是当使用专用的javascript加载器时,你经常会获得更好的加载时间。我的提示是查看Head.js例如(http://headjs.com/)(还有很多其他的)。在使用位于CDN上的javascript时,通常组合脚本在使用缓存时可能会产生高效率。
要记住的一件事是Iphone 3/4只会缓存15 / 25KB的javascript,所以如果你有大量的脚本并将它们组合起来就会遇到麻烦。 http://www.phpied.com/iphone-caching/