什么是node-libs-browser,为什么在安装babel-loader的时候会安装它

我刚刚安装了babel loader ,使用webpack的babel。

它带来了3个额外的节点依赖关系,但只有其中2个我预期

来自babel loader package.json

"peerDependencies": { "babel-core": "*", "webpack": "*" }, 

那么,为什么我也越来越node-libs-browser我不知道它是什么,也不希望额外的模块在我的devDependencies

重要! 正如Patrik指出的那样,Webpack现在可以处理它,所以你不需要单独安装它。 它已经作为Webpack的直接依赖而被移动。


老解答

node-libs-browser是Webpack的一个对等体依赖。 正如软件包页面所述,它为浏览器的使用提供了某些节点库。 很显然,像fs这样的模块在那里是不可用的,但是你仍然可以使用很多。

build议您自己维护这种对等关系的版本。 实际上,这将是从npm 3开始的默认设置。现在,它们会自动安装。 因此,在devDependencies明确列出它们是一个好主意,即使这样做可能现在还需要额外的工作。