" dev" true表示在package-lock.json文件中?
在我的情况下,当我执行npm操作时它会自动更新。
我们如何删除它?
答案 0 :(得分:2)
因此,回答第一个问题,"dev": true
中的package-lock.json
意味着在npm install
模式下运行时,npm ci
/ production
不会安装此依赖项。
仅将依赖项用于标记为"dev": true
的本地开发环境,然后在CI中使用--production
可以节省一些构建时间。
摘自文档https://docs.npmjs.com/cli/install#description:
默认情况下,
npm install
将安装所有列为package.json
中的依赖项。带有
--production
标志(或在NODE_ENV
环境中 变量设置为production
),npm将不会安装列出的模块 在devDependencies
中。
答案 1 :(得分:0)
摘自https://docs.npmjs.com/files/package-lock.json上的npm文档
如果为true,则此依赖项仅是顶层模块的开发依赖项,或者是一个传递性依赖项。对于既是顶层的开发依赖关系又是顶层的非开发依赖关系的传递依赖关系的依赖关系,都是错误的。
答案 2 :(得分:0)
我认为本段试图说明如何分配程序包依赖项的dev:true。
换句话说,一旦开发依赖包被非开发包间接依赖,则它应为dev:false,因此将被包含在构建过程中。此规则的目的是确保非开发软件包所需的软件包不会具有“ dev:true”。
此外,如果通过“ npm install -D”安装,则该软件包将作为开发软件包安装,因此不会发生“ dev:true”更改。但是,如果通过“ npm install”安装,则可能会删除许多现有的软件包依赖项的“ dev:true”属性。
例如,我在项目中运行“ npm install -D bestzip”,结果是:
运行“ npm install bestzip”,结果是: