"dev"true在package-lock.json文件中的含义是什么?
在我的情况下,当我执行npm操作时它会自动更新.
我们怎样才能删除它?
gor*_*nin 11
所以回答你的第一个问题,"dev": true在package-lock.json手段这种依赖性不会被安装npm install/npm ci运行时production模式。
将依赖项仅用于本地开发环境标记为"dev": true,然后--production在您的 CI 中使用可能会为您节省一些构建时间。
从文档https://docs.npmjs.com/cli/install#description:
默认情况下,
npm install将安装所有列为依赖项的模块package.json。使用该
--production标志(或当NODE_ENV环境变量设置为production),npm 将不会安装devDependencies.
小智 7
来自https://docs.npmjs.com/files/package-lock.json的 npm 文档
如果为真,那么这个依赖要么是顶层模块的开发依赖,要么是一个的传递依赖。对于既是顶级开发依赖又是顶级非开发依赖的传递依赖的依赖,这是错误的。
我认为这一段试图说明包依赖项的 dev: true 是如何分配的。
换句话说,一旦开发依赖包被非开发包间接依赖,它应该是 dev:false ,因此它将被包含在构建过程中。此规则的目的是确保非开发包所需的包不会有“dev: true”。
此外,如果通过“npm install -D”安装,则该包将作为开发包安装,因此不会发生“dev: true”更改。但是,如果通过“npm install”安装,这可能会删除许多现有的依赖项“开发:真”属性。
例如,我在我的项目中运行“npm install -D bestzip”,结果是:
运行“npm install bestzip”,结果是: