Installation | pnpm

pnpm env | pnpm

官方提供了不下载 Node.js 的前提下下载 pnpm 的方案,同时也提供了基于 pnpm 下载和管理 Node.js 版本的方案。

通过 pnpm 下载和使用 Node.js 的命令如下:

pnpm env use lts -g

执行之后,结果如下所示:

Node.js 16.16.0 is activated
  C:\\Users\\kciga\\AppData\\Local\\pnpm\\node.exe -> C:\\Users\\kciga\\AppData\\Local\\pnpm\\nodejs\\16.16.0\\node.exe

但实际上,如果你本机已经在用 nvm 管理 Node.js 版本的话,pnpm 的管理并不会生效,全局 Node.js 版本仍然以 nvm 设置的为准,但二者下载的 Node.js 也并不冲突。

推荐实践

Using pnpm as a Node.js version manager · Discussion #3434 · pnpm/pnpm

Using pnpm as a Node.js version manager · Discussion #3434 · pnpm/pnpm

在以上关于使用 pnpm 作为 Node.js version manager 的讨论中,pnpm 作者提到一句话,我认为是比较合理的实践方式:

The Node.js that runs pnpm is only used by pnpm. The scripts of the installed packages use the globally installed Node.js or the one specified using the use-node-version  setting.

Node.js 全局版本仍然使用 nvm 或其它方式管理,package.json scripts 的执行环境,由 .npmrc 中定义的 use-node-version 决定。