在我当前的项目中,我们的gulp构建过程将我们的Angular应用程序放到两个Javascript文件中;一个用于应用程序中的任何内容(我们编写的内容),一个用于供应商文件(基本上是任何引入的内容;例如包括凉亭)。
最近,一项请求来自对项目的更抽象的影响,将app.js
和vendor.js
(和CSS等价物)合并到一个文件中以减少HTTP请求。
现在,我并没有很多关于gulp的经验,但我们最初的实现是针对这两个文件设置的。我的问题是:巩固这两者是否有实际利益,或者它们是否存在技术或实际原因?也许这就是最初(可能是Yeoman)脚手架铺设它们的方式,如果是这样,是否有建筑理由?
非常感谢您提供的任何建议或经验。
答案 0 :(得分:3)
Gulp将您的供应商和应用程序代码编译到一个文件中没有任何问题。这样做的好处是可以减少浏览器对单个脚本请求所需的请求数量。
但是,通常会使用两个文件,以便在出现错误时更明显地发生错误。这也意味着编译应用程序代码的速度更快,因为无论何时应用程序代码发生更改,都无需重新编译供应商代码。通常,供应商代码更稳定,因此不需要频繁编译(甚至观察)。
此外,随着HTTP2的出现及其执行多路复用下载的能力,将代码连接到一个大文件是一个更糟糕的选择。这是因为即使是很小的更改也会导致需要重新下载整个连接的blob。