使用供应商代码整合应用程序代码有什么好处?

时间:2016-10-25 18:16:37

标签: javascript css angularjs gulp minify

在我当前的项目中,我们的gulp构建过程将我们的Angular应用程序放到两个Javascript文件中;一个用于应用程序中的任何内容(我们编写的内容),一个用于供应商文件(基本上是任何引入的内容;例如包括凉亭)。

最近,一项请求来自对项目的更抽象的影响,将app.jsvendor.js(和CSS等价物)合并到一个文件中以减少HTTP请求。

现在,我并没有很多关于gulp的经验,但我们最初的实现是针对这两个文件设置的。我的问题是:巩固这两者是否有实际利益,或者它们是否存在技术或实际原因?也许这就是最初(可能是Yeoman)脚手架铺设它们的方式,如果是这样,是否有建筑理由?

非常感谢您提供的任何建议或经验。

1 个答案:

答案 0 :(得分:3)

Gulp将您的供应商和应用程序代码编译到一个文件中没有任何问题。这样做的好处是可以减少浏览器对单个脚本请求所需的请求数量。

但是,通常会使用两个文件,以便在出现错误时更明显地发生错误。这也意味着编译应用程序代码的速度更快,因为无论何时应用程序代码发生更改,都无需重新编译供应商代码。通常,供应商代码更稳定,因此不需要频繁编译(甚至观察)。

此外,随着HTTP2的出现及其执行多路复用下载的能力,将代码连接到一个大文件是一个更糟糕的选择。这是因为即使是很小的更改也会导致需要重新下载整个连接的blob。