Windows 10中如何用NVM让不同同级文件夹使用不同Node版本?
解决Windows下NVM切换Node.js版本全局变更的问题
问题原因
NVM for Windows的nvm use命令默认修改当前shell会话的环境变量,若在同一个终端窗口内切换目录,环境变量会全局生效,导致版本跟着变更;如果用的是独立终端窗口,本身会话是隔离的,但你可能没分开窗口操作。
两种解决方案
方案1:用.nvmrc文件锁定目录版本
- 进入需要使用Node 18.14.0的文件夹,新建名为
.nvmrc的文件,内容只写:18.14.0 - 进入需要使用Node 12.22.11的文件夹,同样新建
.nvmrc文件,内容写:12.22.11 - 每次打开终端进入对应文件夹后,直接执行:
NVM会自动读取当前目录的nvm use.nvmrc文件,切换到指定版本,不同目录的终端操作后版本互不影响。
方案2:用独立终端窗口分开管理
- 打开两个单独的终端窗口(比如两个PowerShell/CMD窗口)
- 第一个窗口进入目标文件夹,执行
nvm use 18.14.0 - 第二个窗口进入另一个文件夹,执行
nvm use 12.22.11 - 两个窗口的Node版本相互独立,各自操作不会干扰对方
注意事项
- 不要在同一个终端窗口里来回切换目录执行
nvm use,同一个shell会话的环境变量是共享的,切换目录后版本不会自动变更 - 若使用VS Code集成终端,每次打开新的终端标签页,进入对应目录后执行
nvm use即可,每个标签页属于独立会话
内容的提问来源于stack exchange,提问作者Alberto3
相关产品推荐
相关产品推荐

