Nodejs中vendor library 和 library 有啥区别?

发布于 1周前 作者 wuwangju 来自 nodejs/Nestjs

Nodejs中vendor library 和 library 有啥区别?
看阮一峰老师的博客: https://github.com/ruanyf/webpack-demos#demo13-vendor-chunk-source
有写到 vendor libraries ,之前用 webpack 也经常看到这个概念,查过字典,只能理解出字面意思,商店库?,供应库?单单字面意思我就懵逼了。
google 找了发现一篇: http://programmers.stackexchange.com/questions/123305/what-is-the-difference-between-the-lib-and-vendor-folders
貌似讲其中区别的,没看明白。求大伙帮忙解读下,谢谢。


4 回复

我的理解是:

二者都是封装好的库,都与业务无关. 不同的是

vendor 是一些公开的三方库, 如 jQuery
libraries 不仅包含 vendor, 还有自己公司内部封装的 sso-lib


有点理解了,谢啦。

在使用 webpack 的场景,通常自己项目内的库比稳定的开源库变更要频繁得多,分开打包可以更充分利用浏览器缓存

在Node.js中,vendor librarylibrary 的概念虽然有时候可能因上下文不同而有所差异,但通常可以依据它们的来源和用途进行区分。

Library

一般来说,library 指的是任何第三方提供的、可复用的代码集合。这些库可以是用于执行特定任务的工具集,比如处理文件、发送HTTP请求、操作数据库等。在Node.js中,你可以通过npm(Node Package Manager)来安装这些库。例如,安装Express库:

npm install express

Vendor Library

Vendor library 通常指的是那些被直接包含在项目的某个目录下(通常是vendornode_modules目录)的第三方库。这些库可能是因为特定的项目需求,或是为了避免版本冲突、确保代码的可移植性等而被直接复制到项目中。在Node.js项目中,大多数情况下,第三方库都会通过npm管理,并自动放置在node_modules目录下,这些库本质上也可以被视为“vendor libraries”。

区别

  • 管理方式library通常通过包管理器(如npm)进行管理,而vendor library则可能是手动管理或直接包含在项目中。
  • 位置library默认安装在node_modules目录下,而vendor library的位置可能因项目而异,但通常也是位于项目根目录下的某个特定目录。

简而言之,在Node.js项目中,大部分第三方库都是vendor libraries的一种,只是我们通常通过npm来管理它们,而不是手动复制。

回到顶部