nvm | node | 同时开多个项目,用 nvm use 切换不同 node 版本
问题:可以同时开多个项目,不同项目使用不同的 node 版本吗?nvm可以做到吗?是同时。
回答:同一电脑同时运行多个项目,并且每个项目使用不同的 node 版本,nvm 完全支持。
注意:不是一个终端窗口同时用多个版本,而是 多个终端窗口分别使用不同版本 。
nvm 的原理:
- nvm(Node Version Manager)是按 终端会话来设置 node 版本的。
- ∵ node 的 可执行文件版本是 nvm 通过 修改终端的环境变量 (PATH)来决定的。
- 不同终端的 PATH 互不影响。
- ∴ 多个版本可以并行适用
具体做法:
打开项目1 的终端 cd project-a → nvm use 20 【 nvm use 要用的版本号 】→ npm run dev
打开项目2 的终端 cd project- → nvm use 18 → npm run dev
两个项目就能同时跑,版本不会冲突。
——》打开不同的终端 → 运行【 nvm use 指定的node版本号 】→ npm run dev
nvm 与 nvm-windows 的区别
| 功能 | macOS/Linux nvm | Windows nvm-windows |
|---|---|---|
| 支持每个终端不同 node 版本 | ✔ 支持 | ✔ 支持 |
支持 .nvmrc 自动识别 | ✔ | ❌ 不支持 |
nvm use 修改环境变量方式 | 修改当前 shell PATH | 修改系统 PATH |
都可以多个项目同时运行不同版本。
💡 推荐:每个项目写一个
.nvmrc虽然 Windows nvm 不自动识别
.nvmrc,但你仍可以:项目 A:
16项目 B:
18然后手动:
nvm use $(cat .nvmrc)或者直接:
nvm use 16
