当我在Node.js项目中运行npm install
时,npm同时安装依赖项和dev依赖项。如果我不想安装dev依赖项,我可以运行npm install --production
。
问题1:如果我不提供--production
:是否也安装了依赖项的dev依赖项,还是只安装了它们的实际依赖项?
现在,如果我在一个Node.js项目中并安装了一个新的依赖项,那么该怎么办,比如:
npm install foo
当然,这会安装foo
的依赖项。
问题2:但是它的开发依赖关系呢?它们是也安装好了,还是跳过了?
发布于 2016-08-09 13:15:41
默认情况下,运行npm时,还会安装依赖项和devDependency依赖项。因为如果有一次要开发一个包,我们会从git下载它,然后转到根文件夹并运行。
npm install
所以你会希望有devDependencies。
npm install "$package"
默认情况下不会安装devDependencies。但是,如果您确实希望安装开发包,则可以将dev config选项设置为true:
npm install "$package" --dev
发布于 2016-08-09 13:04:20
回答您的问题:
npm install
设置为production
时才会以安装dev依赖项的方式安装dev依赖项发布于 2018-10-01 15:09:32
节点应用程序使用多个方法来维护最新的依赖版本控制,但是需要考虑多个依赖类型。依赖项在package.json文件中的节点应用程序根目录中找到。我将介绍不同的依赖类型,并列出一些定义特性或特性:
依赖项:这些都是在一个简单的对象中指定的,该对象将包名映射到一个版本范围。版本范围是具有一个或多个空格分隔描述符的字符串。依赖关系也可以用tarball或git URL标识。
从包含任何其他目录依赖项的package.json npm安装$package的目录中安装npm需要临时运行:如果A需要B,B需要C。则C被安装,否则B无法工作。如果有人计划在他们的程序中下载和使用模块,那么他们可能不想或不需要下载和构建您使用的外部测试或文档框架。在本例中,最好将这些附加项映射到devDependencies对象中,除非专门传递-dev,否则在用户安装包时不安装该对象。这些通常是在从包的根执行传统npm安装时安装的。
npm安装在包含package.json的目录上,除非开发人员传递-产品标志。
不是安装在npm上,而是在任何其他目录上安装"$package“,除非您给它--dev选项,否则不会临时安装其他依赖类型:--这些都不常用,但可能有用途。
peerDependencies optionalDependencies
https://stackoverflow.com/questions/38851258
复制相似问题