全自动自动切换node版本

最近创建了一个公众号:编程进阶录,记录一些自己学习过程当中的笔记和心得,欢迎大家关注

最近看到一篇文章登上了热榜,我阅读了一下,发现这不还是在手动切换吗?所以,我准备和大家介绍一种自动切换的 node 版本的工具,不是 vscode 插件!不是 vscode 插件!不是 vscode 插件!

这篇文章的灵感也是来源于这篇文章😄: # 🤔公司实习生居然还在手动切换node版本?

0⃣️ 效果展示

先看一下效果,z 这个命令你可以理解为 cd,也就是方便我快速的切换目录。

1⃣️ 准备

这里我需要先声明一下全自动切换 node 版本的条件。

  • 你使用的电脑需要是能够安装 zsh 和 oh-my-zsh 的,oh-my-zsh 对系统的兼容性,如下图所示,windows 的话还是用 WSL 作为开发环境比较好。
  • 然后就是你电脑上已经成功安装好了 nvm ,如果你还没有安装,可以参照下面这行命令进行安装
bash 复制代码
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

或者

bash 复制代码
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

验证是否成功安装的话你可以打开终端,在命令行当中输入命令

bash 复制代码
nvm --version

出现如下图所示的内容,表示已经成功安装了 nvm 。

可能会在执行命令之后,还需要设置 linux 的环境变量,直接按照官方源码仓库当中的 README 设置即可。

仓库地址:github.com/nvm-sh/nvm

即将下面这行 shell 命令,添加到你的 ~/.zshrc 当中,因为我们需要借助 zsh 插件,所以使用的是 zsh ,命令的含义就是在你的系统当中设置一个 $NVM_DIR 的环境变量。

shell 复制代码
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

2⃣️ 实现自动切换 node

如果你已经成功的安装了 zsh 和 oh-my-zsh ,接下来需要借助一个一个 oh-my-zsh 的插件,这个插件是已经内置在 oh-my-zsh 当中了的。

也就是 nvm 对应的 oh-my-zsh 插件。

github.com/ohmyzsh/ohm...

修改你的 .zshrc 文件,这个文件一般在你的用户目录下,在命令行直接输入下面这两行命令开始配置你的 zshrc 。

bash 复制代码
cd ~

vim .zshrc

你也可以不使用 vim,选择一个你喜欢的编辑器就好。

将下面的配置加入到你的配置当中.

代码如下:

zsh 复制代码
 plugins=(git z nvm zsh-syntax-highlighting zsh-autosuggestions)
 
 zstyle ':omz:plugins:nvm' lazy yes
 zstyle ':omz:plugins:nvm' autoload yes
 zstyle ':omz:plugins:nvm' silent-autoload yes

上面的 plugins 包含了 nvm 插件,也还有一些 zsh 的常用插件,自行搜索安装即可,如果你有什么不懂的地方,也欢迎关注我的公众号和我私聊,帮你解决问题。

如果你已经做好了上面的工作,执行一下下面这条命令,让我们修改过的 .zshrc 起效果。

bash 复制代码
source .zshrc

还有最后一点,默认情况下需要设置一个默认使用的 node ,因为上面的方法实现 node 版本的自动切换,需要借助项目下的 .nvmrc 文件。

.nvmrc 一般是一个纯文本文件,记录了项目需要使用的 node 的版本号。如下图所示:

接下来你只需要给你的项目增加一个 .nvmrc 配置,在终端下就可以自动根据你项目配置的 node 版本自动进行切换了,如果项目所需要的 node 版本不存在, 这个工具还能够自动使用 nvm 下载对应的版本。

3⃣️ 注意事项

为了让有更好的开发体验,应该给我们的电脑配置一个默认的 node 版本,因为不是所有的项目都会有 .nvmrc 文件,如果不存在,就能够自动使用我们设置好的默认版本。

给 nvm 设置默认版本 node 命令如下:

bash 复制代码
nvm alias default [版本号] # [版本号]替换成你需要使用的 node 的版本号,如 v18.8.2
相关推荐
inquisiter7 分钟前
KernelGpt的部分尝试
java·前端·apache
the局外人29 分钟前
用 TRAE 把 Markdown文档 搬到微信公众号
前端
Autumn_ing30 分钟前
AI原型设计工具怎么选?可编辑原型与可运行前端适合什么场景
前端·小程序·产品经理·代码·codex·墨刀ai客户端·ai原型
夕阳_醉了1 小时前
前端通用组件开发全指南|从 0 到 1 打造稳定可复用的业务组件
前端
Amos_Web1 小时前
Rspack 源码解析(三十):SourceMapDevToolPlugin 如何生成并关联 source map
前端
console.log('npc')1 小时前
从0到1实现任务评价统计功能:React + TypeScript 实战指南(小白注释版)
前端·react.js·typescript
IT_陈寒1 小时前
为什么你应该学习React?
前端·人工智能·后端
ZoeLandia1 小时前
React04:事件处理与受控表单
开发语言·前端·react.js·typescript
亿元程序员1 小时前
用AI做了一款微信小游戏,却发现上传不了
前端
Ai-_Man2 小时前
我需要批量导出Poe左边栏所有对话,而不是一条具体的对话内容,你们AI导出鸭可以吗?
开发语言·前端·javascript·人工智能·小程序