1085

我使用 nvm 下载节点 v0.4.10 并安装 npm 以使用该版本的节点。

我正在尝试使用安装快递

npm install express -g

我得到一个错误,表示需要节点版本> = 0.5.0。

好吧,这很奇怪,因为我在这里遵循使用节点 v0.4.10 的 node+express+mongodb 教程的说明,所以我假设 express 对节点 v0.4.10 可用。如果我的假设是正确的,我如何告诉 npm 获取适用于我的设置的版本?

4

11 回答 11

1821

如果您必须安装旧版本的软件包,只需指定它

npm install <package>@<version>

例如:npm install express@3.0.0

您还可以将--save标志添加到该命令以将其添加到您的 package.json 依赖项中,或者--save --save-exact如果您希望在 package.json 依赖项中指定确切的版本,则可以添加标志。

install命令记录在这里:https ://docs.npmjs.com/cli/install

如果您不确定可用的软件包版本,您可以使用:

npm view <package> versions

npm view可用于查看有关包裹的其他内容。https://docs.npmjs.com/cli/view

于 2013-04-09T02:01:25.773 回答
114

这很容易。只需写这个,例如:

npm install -g npm@4.6.1

或者:

npm install -g npm@latest    // For the last stable version
npm install -g npm@next      // For the most recent release
于 2017-07-03T07:47:32.640 回答
97

首先删除旧版本,然后按字面意思运行以下命令:

npm install express@3.X

或者

npm install express@4.X

对于稳定的或最近的

npm install -g npm@latest    // For the last stable version
npm install -g npm@next      // For the most recent release
于 2015-06-08T04:20:19.987 回答
44

在我看来,这是最简单和最快的方法:

$ npm -v

4.2.0

$ npm install -g npm@latest-3

...

$ npm -v

3.10.10

于 2017-04-27T08:29:32.970 回答
8

npm install -g npm@version

您要降级的地方

npm install -g npm@3.10.10

于 2018-07-25T05:32:00.250 回答
4

您可以使用以下命令更新您的 npm 包:

npm install <package_name>@<version_number>

例子: npm install yargs@12.02

于 2018-08-16T12:23:43.313 回答
3

您可以使用以下命令安装以前版本的 npm 包:

npm install packagename@version
于 2018-09-05T19:25:21.610 回答
2

我有一种解决此类问题的通用方法,这也可能会有所帮助,尤其是在克隆存储库以在本地运行它们时,但需要对版本进行更多分析。

使用包npm-check-updates我验证未在其最新可用版本中声明的包的版本(根据 package.json 文件),如图所示(https://www.npmjs.com/package/npm-check -更新):

在此处输入图像描述

有了这些信息,我们可以验证不同包的更新状态,并决定哪些包升级/降级,哪些不升级。

假设我们决定更新所有列出的包,我们可以使用ncu -u仅修改您的 package.json 文件的命令。运行npm install以更新已安装的包和 package-lock.json。

然后,根据存储库的要求,我们可以细化所需的内容,使用 npm view <package> versions和 安装特定版本npm install <package>@<version>

于 2019-06-24T14:27:01.487 回答
0

对于纱线用户:

yarn add package_name@version_number
于 2020-04-26T20:07:02.893 回答
0

如果您使用的是 mac,则始终可以使用 nvm,如果是 windows,则可以使用 nodist

对于窗口:https ://changelog.com/posts/nodist-node-version-manager-for-windows

对于 Mac:https ://github.com/nvm-sh/nvm

于 2021-09-26T01:32:56.150 回答
-3

在 Ubuntu 上,您可以尝试此命令。

sudo npm cache clean -f
sudo npm install -g n
sudo n stable 

具体版本:sudo n 8.11.3 而不是 sudo n stable

于 2018-07-22T06:47:05.437 回答