fnm + Cmder使用, 从此不再有多个项目多个Node切来切去的苦恼了[windows]
建议先去看一下官网了解一下: github.com/Schniz/fnm
前置配置:
添加cmder
的路径环境变量: CMDER_ROOT
, 如下:
添加环境变量
FNM_DIR
, 这个就是配置以后安装的node
各个版本的目录, 并且每个版本的全局安装的包也会在这个目录下, 如果不配置的话, 会默认安装在C:\Users{your user name}\AppData\Roaming\fnm
下。
安装
windows: 直接使用二进制文件安装 下载地址
mac: 或者使用命令安装, 如下:
curl -fsSL https://fnm.vercel.app/install | bash -s -- --install-dir "./.fnm" --skip-shell
也可使用二进制文件安装。
配置环境变量
与 cmder 结合使用
在前置配置里我们配置好CMDER_ROOT
的环境变量 现在 创建一个.cmd
的文件, 写入以下内容:
:: %CMDER_ROOT%\bin\fnm_init.cmd
@echo off
FOR /f "tokens=*" %%z IN ('fnm env --use-on-cd') DO CALL %%z
将上面创建的fnm_init.cmd
放置到%CMDER_ROOT%\bin\fnm_init.cmd
, 然后打开%CMDER_ROOT%\config\user_profile.cmd
, 追加以下内容:
:: %CMDER_ROOT%\config\user_profile.cmd
call "%CMDER_ROOT%\bin\fnm_init.cmd"
这样就可以了 使用cmder
打开项目目录时, 就会自动读取项目下的.node-version
基本使用
fnm ls-remote
: 查看远程Node
版本
fnm install v18.16.0
: 安装指定Node
版本
fnm install --lts
: 安装最新LTS版本的Node
fnm alias <version> <name>
: 配置版本别名, 例如: fnm alias 14.1.0 old
fnm default <version>
: 配置默认node版本
fnm unalias <name>
: 删除别名
fnm use 18
: 使用特定版本, 可以直接是16, 18这样
fnm use
: 单独列一下, 如果后面不指定版本, 项目根目录下存在
.node-version
文件, 那么该命令会自动切换到
.node-version
配置的node
版本
fnm ls
: 列出本地所有安装的Node
版本
与项目配合使用
在项目根目录下添加.node-version
文件, 并写入:
v18.16.0
卸载
这个官网说的我没太明白, 我理解的是把fnm
的安装路径删掉, 然后删掉fnm
的node
安装目录, 再删掉环境变量就算卸成功了.
转载自:https://juejin.cn/post/7233700714072997947