如何安装多个版本Node之NVM

2023-12-05

nvm

最近准备开始学习vite,发现最低需要18+版本的node,奈何手上有些旧项目无法使用高版本node,所以出现了使用多版本node的需求,所以search了一下教程,这边只是一个自己的记录。
vite官网说明

一、nvm下载

前往github下载 nvm安装包
在这里插入图片描述
下载后解压双击nvm-setup.exe安装即可。
这里插个内容,如果发现自己进不去github,可以尝试修改本机hosts文件:
1、在cmd中输入 ping github.com 得到IP
在这里插入图片描述
2、在本机路径中 C:\Windows\System32\drivers\etc 找到hosts文件,添加代码 20.205.243.166 github.com
3、刷新缓存:打开命令行输入 ipconfig /flushdns
现在进入github就比较迅速了。
下载了nvm-setup.zip后记得把hosts文件还原,否则访问其他网站会被影响。

二、node安装

首先在cmd中输入 nvm 命令,确保nvm安装成功
在这里插入图片描述
记住自己的nvm安装路径,如果需要更换为淘宝镜像的,要修改nvm安装路径下的settings.txt文件,添加如下两行代码

node_mirror:https://npm.taobao.org/mirrors/node/
npm_mirror:https://npm.taobao.org/mirrors/npm/

在这里插入图片描述
然后打开cmd,用命令 npm install 版本号 安装指定版本node,我这边安装了老版本12.22.12和新版本20.10.0
在这里插入图片描述
至此,多版本node安装完成,通过 nvm use 版本号 切换当前要使用的node版本
nvm常用命令:

# 显示当前所使用的nvm版本号
nvm -v

# 查看可在线安装的node.js版本
nvm list available

# 查看已安装的node.js版本
nvm ls

# 显示当前正在使用的node.js版本
nvm current

# 在线安装指定版本的node.js,[version]为指定的版本号
nvm install [version]

# 卸载指定版本的node.js
nvm uninstall [version]

# 切换node.js版本
nvm use [version] 

三、vue多版本安装

如果有同时使用vue2和vue3开发不同项目的场景,就需要安装两个版本vue
1、在自己想要的目录下新建两个文件夹用于安装不同版本vue
在这里插入图片描述
2、vue2安装,在cmd中进入vue2路径,用命令 npm install vue-cli@2.9.6 安装相应版本vue
在这里插入图片描述
3、vue3安装,在cmd中进入vue3路径,用命令 npm install @vue/cli 直接安装最新vue3
在这里插入图片描述
4、修改名称
由于vue2和vue3在安装时,都是vue,系统无法区分,所以将vue2安装目录下的node_modules下的.bin目录下的vue和vue.cmd修改为vue2和vue2.cmd,同样修改vue3的安装文件
vue2修改
vue3修改
5、配置环境变量,使其全局可用
在系统环境变量中新增vue2和vue3,具体如下:
在这里插入图片描述
在这里插入图片描述
在path变量中添加vue2和vue3:
在这里插入图片描述
至此多版本vue安装成功,通过在cmd中输入 vue2 --version vue3 --version 查看版本
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何安装多个版本Node之NVM 的相关文章

  • 在渲染组件之前从 api 获取数据

    我在渲染页面之前发送 2 个 api 请求 const Profile template profile attributes null photos data function return attributes Profile attr
  • NodeJS:调用 global.gc() 不会将内存减少到最低限度?

    为了调查内存泄漏 我设置了一条触发的路线global gc 在每个POST gc app post gc function req res global gc 但是 我注意到 如果我发送垃圾邮件此请求 每次都会越来越多地减少内存使用量 不应
  • Apache + Symfony2 + HTTPS + Node.js + Socket.io:socket.emit 未触发

    我花了几个小时来解决这个问题 但毫无结果 编辑 找到解决方案 参见我的答案 项目背景 我正在构建一个项目Symfony2 这需要一个用于上传大文件的模块 我选择了Node js and Socket IO 我必须从头开始学习 所以我可能会错
  • Android socket.io应用程序无法连接到node.js服务器

    我的应用程序使用socket io 无法连接到node js 服务器 服务器节点 js var app require http createServer var io require socket io app app listen 10
  • nvm 与 npm 配置“前缀”选项不兼容:

    我正在尝试运行另一个 NodeJS 版本nvm但出现此错误 nvm use v4 2 4 nvm is not compatible with the npm config prefix option currently set to Us
  • 不知道如何预览我生成的 Nuxt3 应用程序

    我刚刚在静态模式下创建了一个 Nuxt3 但我不想每次都将其推送到 Netlify 进行预览 这是我的nuxt config js 没有改变 import defineNuxtConfig from nuxt export default
  • socket.io 的良好初学者教程? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在打字稿中导入 json

    我是 typescript 的新手 在我的项目中 我们使用 typescript2 在我的要求之一中 我需要导入 json 文件 所以我创建了 d ts 文件如下 test d ts declare module json const va
  • 如何在生产模式下为 Chrome 扩展启用 Vue 开发工具?

    我正在构建一个 chrome 扩展 并使用 vue cli webpack 配置 我希望能够在运行后使用 vue devtoolsnpm 运行构建命令 我尝试添加Vue config devtools true 在 main js 中 或者
  • 将 CKEditor 5 与 nuxtjs 结合使用

    我正在尝试在我的 Nuxtjs 项目中导入 CKEditor 5 的自定义版本 并且我已经尝试了所有可能的方法来正确导入它 但没有一个对我有用 这是其中之一 let ClassicEditor let CKEditor if process
  • AWS beanstalk Nodejs 多核

    我有一个问题 在文档中找不到 如果我使用 beanstalk 创建一个 Nodejs 应用程序并使用多核机器 beanstalk 会利用所有这些核心吗 由于nodejs是单线程应用程序 beanstalk会为每个cpu创建一个新的nodej
  • Vue警告无法解析组件:ion-icon

    以下的用法如下https ionicons com usage https ionicons com usage the ion icon显示但我收到此警告 Failed to resolve component ion icon 我的步骤
  • 在 Mac OS Sierra 上使用 brew 安装节点失败

    我正在尝试在 macOS Sierra 上使用自制程序安装节点 我跑 brew install node 看似成功安装后 我在尝试运行时得到以下信息node dyld Library not loaded usr local opt icu
  • Browserify 的自定义依赖项名称不起作用

    我正在尝试让 browserify 的自定义依赖项名称与内存流一起使用 我使用内存流的原因是因为此代码注定要在 AWS Lambda 内部运行 该 AWS Lambda 将接收多个 文件 作为输入 并且 Lambda 无法通过文件系统使用该
  • nodeJS + Swig 模板将变量传递给 javascript

    有没有办法使用nodeJS的express swig模板将变量从服务器端传递到客户端javascript 我知道这可以在 Jade 中完成 但我宁愿坚持使用更类似于 HTML 的模板引擎 感谢各位的帮助 好的 我假设您可以使用 consol
  • pine、node.js (express) 和 Access-Control-Allow-Origin

    我正在本地电脑上开发一个应用程序 前端应该使用 spinjs 构建 后端 api 使用 node js 构建 Spine 运行在端口 9294 上 node js 运行在端口 3000 上 在 Spine 中 我在模型中添加了以下内容 ur
  • 如何读取节点中的单个位缓冲区

    如何读取节点中的单个位缓冲区 例如
  • 在 Azure 上运行节点应用程序时出错

    我们正在尝试在azure上运行节点应用程序 它已成功部署 但当我们尝试运行该应用程序时 我们在跟踪日志中收到以下错误 ActivityId A5FF0B34 7C3F 4A99 9497 6C04A9AE9A9F 消息 在进程终止之前 ii
  • 通过套接字的身份验证方法

    我正在尝试通过套接字进行身份验证sailsjs and passport 挑战似乎在于套接字连接没有会话 并且 sailsjs 模拟请求对象 导致它没有 Passport 中间件设置 这导致nodejs抛出一个错误 说req对象没有调用的方
  • 如何在 Express (NodeJS) 中验证和处理表单

    Express 是否有首选的表单处理和验证库 我真的在寻找与 Django 表单中类似的抽象级别 即模板中的验证和错误报告 如果可以在客户端使用相同的验证 那就太好了 有人用过或者写过什么好东西吗 看起来有一个模块位于https githu

随机推荐