我正在开发的网站有大量的javascript,这些javascript在各种功能中共享,并且还有大量特定于功能的javascript。我已经阅读了有关使用一个单片javascript文件与许多较小文件的所有信息。
就我的目的而言,庞大的文件方法不仅会导致脚本难以维护,而且还会包含大量不需要的javascript。同时,将javascript分开以便仅包含所需的代码将导致过多的文件/ HTTP请求。除了为用户提供额外的文件大小开销之外,包含大量不需要的代码的想法似乎与正确的软件设计概念相悖。
我找到了适用于Apache的mod_concat模块,看起来它完全可以解决我的问题 - 我可以将我的javascripts分成任意数量的文件,只包含必要的文件,并且几乎不会对性能产生影响。
实际情况如此吗?是否需要管理许多文件的唯一潜在缺点?我知道mod_concat还没有永远存在,所以我也在寻找一些背景知识a)以前是如何处理的,以及b)如果使用代码连接,包括适量的不需要的javascript被认为是可接受的(甚至是最佳实践。)
谢谢,Brian
答案 0 :(得分:2)
我认为你不需要apache模块。为生产创建一个缩小的JS文件应该是最好的方法,因为它只加载一次然后由浏览器缓存。虽然对于开发当然,将应用程序拆分为单独的文件是有意义的。
我个人最喜欢的JavaScript模块管理和压缩是Steal JS,它是伟大的JavaScript MVC框架的一部分(对于大型JS应用程序通常很有用)。它可以在开发期间动态加载模块文件,对于生产,您可以创建一个压缩的JavaScript文件(它也可以创建CSS)。
另一种选择是RequireJS,但我只是快速浏览一下。