package.json 中的 npm 版本与 运行 npm -v 时显示的不同?
npm version in package.json is different from what is showing when running npm -v?
我在 package.json
文件中的 npm 版本与当前版本不同。知道如何团结他们吗?或者这是正常行为吗?
"dependencies": {
"bcryptjs": "^2.4.3",
"client": "file:client",
"config": "^3.3.6",
"crypto-js": "^4.1.1",
"express": "^4.17.1",
"firebase": "^9.6.7",
"npm": "^8.1.4",
"ts-node": "^10.5.0",
"typescript": "^4.4.4"
},
运行 npm -v
命令 returns 8.5.0
.
它不更新的原因是因为您没有npm
全局更新。
因此,npm
依赖项是多余的。
通常,您会使用以下命令全局更新 npm
。
$ npm install -g npm
但是,由于您只是在本地项目依赖项中指定它,它不会在全局范围内更新npm
。
如果您想全局更新 npm
,您可以使用 package.json
中的脚本执行此操作,如下所示。
{
"scripts": {
"global": "npm install -g npm@8.1.4"
}
}
然后您可以使用以下命令调用它。
$ npm run global
这将在全球更新 npm
版本。
总而言之,这是您当前操作方式的预期行为,但您可以使用脚本全局更新 npm
。
我在 package.json
文件中的 npm 版本与当前版本不同。知道如何团结他们吗?或者这是正常行为吗?
"dependencies": {
"bcryptjs": "^2.4.3",
"client": "file:client",
"config": "^3.3.6",
"crypto-js": "^4.1.1",
"express": "^4.17.1",
"firebase": "^9.6.7",
"npm": "^8.1.4",
"ts-node": "^10.5.0",
"typescript": "^4.4.4"
},
运行 npm -v
命令 returns 8.5.0
.
它不更新的原因是因为您没有npm
全局更新。
因此,npm
依赖项是多余的。
通常,您会使用以下命令全局更新 npm
。
$ npm install -g npm
但是,由于您只是在本地项目依赖项中指定它,它不会在全局范围内更新npm
。
如果您想全局更新 npm
,您可以使用 package.json
中的脚本执行此操作,如下所示。
{
"scripts": {
"global": "npm install -g npm@8.1.4"
}
}
然后您可以使用以下命令调用它。
$ npm run global
这将在全球更新 npm
版本。
总而言之,这是您当前操作方式的预期行为,但您可以使用脚本全局更新 npm
。