全自动自动切换node版本

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

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

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

0⃣️ 效果展示

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

1⃣️ 准备

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

  • 你使用的电脑需要是能够安装 zshoh-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

如果你已经成功的安装了 zshoh-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
相关推荐
索然无味io37 分钟前
XML外部实体注入--漏洞利用
xml·前端·笔记·学习·web安全·网络安全·php
m0_748232921 小时前
ERROR:This version of pnpm requires at least Node.js vXXX 的解决方案
node.js
ThomasChan1231 小时前
Typescript 多个泛型参数详细解读
前端·javascript·vue.js·typescript·vue·reactjs·js
爱学习的狮王1 小时前
ubuntu18.04安装nvm管理本机node和npm
前端·npm·node.js·nvm
东锋1.31 小时前
使用 F12 查看 Network 及数据格式
前端
zhanggongzichu1 小时前
npm常用命令
前端·npm·node.js
anyup_前端梦工厂1 小时前
从浏览器层面看前端性能:了解 Chrome 组件、多进程与多线程
前端·chrome
chengpei1472 小时前
chrome游览器JSON Formatter插件无效问题排查,FastJsonHttpMessageConverter导致Content-Type返回不正确
java·前端·chrome·spring boot·json
我命由我123452 小时前
NPM 与 Node.js 版本兼容问题:npm warn cli npm does not support Node.js
前端·javascript·前端框架·npm·node.js·html5·js
每一天,每一步2 小时前
react antd点击table单元格文字下载指定的excel路径
前端·react.js·excel