Node.js 为什么不指定一个指定的版本,那么我们就不';我不需要这个包-lock.json
我是NPM的新手,如果我的问题听起来很愚蠢,我很抱歉。以下是我的问题: Q1- 安装软件包并指定指定版本时,例如: npm安装xxx@3.5.1 但为什么在package.json文件中会变成:Node.js 为什么不指定一个指定的版本,那么我们就不';我不需要这个包-lock.json,node.js,npm,Node.js,Npm,我是NPM的新手,如果我的问题听起来很愚蠢,我很抱歉。以下是我的问题: Q1- 安装软件包并指定指定版本时,例如: npm安装xxx@3.5.1 但为什么在package.json文件中会变成: { "devDependencies": { "xxx": "^3.5.1" } } 我知道额外的插入符号(^字符)将接受3.5.2、3.6.0等版本,但不接受4.0.0。但是我明确指定我想要3.5.1版,那么为什么NPM仍然在版本前面添加^ 问题2- 如果NPM使用用户指定的
{
"devDependencies": {
"xxx": "^3.5.1"
}
}
我知道额外的插入符号(^字符)将接受3.5.2、3.6.0等版本,但不接受4.0.0。但是我明确指定我想要3.5.1版,那么为什么NPM仍然在版本前面添加^
问题2-
如果NPM使用用户指定的版本安装包,那么我们不需要package-lock.json文件,是吗?因为package.json文件中的所有版本都是唯一且明确的?1
您可以添加——保存精确的
npm install lodash--save--save-exact
-安装最新版本,并将确切版本保存在package.json的依赖项中
二,
^
和~
是npm
向您提供的获取依赖项的最新来源的方法。不过有时候也有风险
阅读本文以获得更详细的解释 假设NPM设计用于安装和记录用户提供的指定版本,那么我们不需要package-lock.json,我的理解正确吗?是的。我想是的。因为node\u模块
中的所有依赖项版本在package.json中都是相同的