如何使用nvm来管理不同版本的 Node.js,然后使用不同的 Node.js 版本来运行不同版本的 React 应用?

要使用 nvm 来管理不同版本的 Node.js,可以按照以下步骤进行操作:

  1. 安装 nvm

    可以在 nvm 的 GitHub 仓库中找到安装说明,根据自己的操作系统和需求进行安装。

  2. 安装多个 Node.js 版本

    在安装了 nvm 后,可以使用 nvm install 命令来安装多个 Node.js 版本,例如:

nvm install 10.24.1
nvm install 14.17.6
  1. 使用指定版本的 Node.js

    安装完多个 Node.js 版本后,可以使用 nvm use 命令来切换使用不同版本的 Node.js,例如:

    nvm use 10.24.1

    这将会把当前的 Node.js 版本切换为 10.24.1。

    如果想在当前终端会话中永久切换到某个版本的 Node.js,可以使用 nvm alias 命令,例如:

    nvm alias default 14.17.6

    这将会把默认使用的 Node.js 版本切换为 14.17.6。

  2. 运行 React 应用

    使用不同版本的 Node.js 运行 React 应用时,需要在项目的根目录下创建一个 .nvmrc 文件,并在文件中指定所需的 Node.js 版本,例如:

# .nvmrc
10.24.1
当然也可以在里面使用别名
# .nvmrc
my-node
然后在终端中进入项目根目录,使用 `nvm use` 命令来切换到指定版本的 Node.js,然后使用 `npm start` 命令来启动 React 应用,例如:
nvm use
npm start
这将会在当前终端会话中切换到项目指定的 Node.js 版本,并启动 React 应用。如果要在其他终端会话中也使用相同版本的 Node.js,需要再次使用 `nvm use` 命令来切换版本。

可以自己命名nvm的不同环境吗?

可以使用 nvm 创建自定义别名(alias)来为每个环境指定您喜欢的名称。使用以下命令创建自定义别名:

nvm alias myapp 14.16.1

这将创建一个名为 myapp 的别名,指向 14.16.1 版本的 Node.js。您可以使用 nvm use 命令切换到该版本:

nvm use myapp

同样,您可以创建多个不同的别名,每个别名可以指向不同版本的 Node.js。这样,您就可以在同一台计算机上同时运行多个 React 应用,每个应用使用不同版本的 Node.js 环境。

可以给同一个版本的node创建多个环境吗

是的,您可以使用 nvm 创建多个相同版本的 Node.js 环境。这在您需要在不同的项目中使用相同版本的 Node.js 时非常有用,但每个项目可能需要不同的全局模块。

例如,要创建名为 myproject1 的新环境,可以使用以下命令:

nvm install 14.16.1 --reinstall-packages-from=default --alias=myproject1

这将在 14.16.1 版本的 Node.js 中创建一个新环境,并将 default 环境的全局模块重新安装到 myproject1 环境中。

要使用新环境,请使用 nvm use 命令:

nvm use myproject1

现在,您可以安装项目特定的全局模块,并在 myproject1 环境中运行应用程序。

您还可以使用类似的方式创建其他项目所需的环境,每个环境可以拥有不同的全局模块。

那我已经有了npm创建的环境,想要将现在的环境作为nvm默认环境,然后创建其他环境,应该如何操作?

如果您已经使用 npm 安装了 Node.js,并且希望将其设置为 nvm 的默认版本,则可以使用以下命令:

nvm use system

这将使用系统安装的 Node.js 版本,并将其设置为 nvm 的默认版本。

接下来,您可以使用 nvm install 命令来安装其他版本的 Node.js,并使用 nvm use 命令切换到特定版本的 Node.js。

例如,如果您要安装 14.16.1 版本的 Node.js,请使用以下命令:

nvm install 14.16.1

这将安装 14.16.1 版本的 Node.js。

然后,您可以使用以下命令将默认版本设置为 14.16.1

nvm alias default 14.16.1

这将使 14.16.1 版本的 Node.js 成为默认版本。现在,每次打开新的终端窗口时,都会使用 14.16.1 版本的 Node.js。

您可以使用 nvm use 命令来切换到其他版本的 Node.js。例如,如果您要切换到 12.22.1 版本的 Node.js,请使用以下命令:

nvm use 12.22.1

这将使 12.22.1 版本的 Node.js 成为当前版本。

【chatQA】nvm包版本管理的更多相关文章

  1. npm2 与 npm3的包版本管理

    npm2采用严格的包依赖模式 npm install name@1.2.* ---- 1.2.0 <= version <= 1.2.9 npm install name@1.* ---- ...

  2. 前端资源多个产品整站一键打包&包版本管理(二)——如何在bower的配置文件加上注释

    问题: 当一个工程里面有好几个项目,每个项目引用同一个包,但是不同的名字,例如在bower中 fancybox 跟 jquery.fancybox 是一样的,我们只需要下载其中的一个版本,而打包工作不 ...

  3. 前端资源多个产品整站一键打包&包版本管理(一)

    来新公司工作的第五个月.整站资源打包管理也提上了日程. 问题: 首先.什么是整站的打包管理呢? 我们公司的几个重要产品都在同一个webapp里面,但是,不同的开发部门独立开发不同的产品,长期以来,我们 ...

  4. linux安装nvm node版本管理器 nvm常用命令 部署node服务器环境

    1,nvm git地址点击打开链接,安装命令 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh ...

  5. nvm: node版本管理工具

    安装nvm   curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash node 版本切 ...

  6. nvm Nodejs 版本管理器 安装及配置

    1.如果已安装nodejs请先卸载干净 nodejs:删除C:\Program Files\nodejs 文件夹 npm:删除C:\Users\{用户名}\AppData\Roaming\npm 文件 ...

  7. nvm —— Node版本管理工具

    nvm下载 下载地址 下载nvm-setup.zip文件 nvm安装 1.以管理员身份运行install.cmd文件,设置文件路径 root: C:\Users\Administrator\AppDa ...

  8. 记一次发布/更新npm包的过程及包版本管理

    您可以发布包含package.json文件的任何目录.这里如何首次发布程序包以及如何在以后更新程序包. 如何发布包 制备 了解npm政策 在开始之前,如果您对网站礼仪,命名,许可或其他指南有疑问,最好 ...

  9. 前端资源多个产品整站一键打包&包版本管理(四)—— js&css文件文件打包并生成哈希后缀,自动写入路径、解决资源缓存问题。

    问题: 当我们版本更新的时候,我们都要清理缓存的js跟css,如何使得在网页中不需要手动清理呢? 答案: 生成带有哈希后缀的js跟css文件 1.文件路径 路径中的conf.js 是用于放置全局打包的 ...

  10. 前端资源多个产品整站一键打包&包版本管理(三)—— gulp分流

    问题: 当我们一个工作台里面有好几个项目的时候,我们要为项目的前端资源进行打包,但是,gulpfile只有一个,如果我们把所有的打包都放在同一个文件里面,首先文件会越来越大,而且不便于管理,这时,我们 ...

随机推荐

  1. Unity Random

    Random 不仅可以随机值,还可以随机其它属性,用了这么久,刚知道... 譬如: rotation  随机Rotation onUnitSphere  球体表面随机点 insideUnitCircl ...

  2. express的使用:接口的编写(三)

    1.接口的跨域问题 a.CORS,主流 b.JSONP,只支持get请求 步骤:a.安装 npm install cors b.使用  const cors = require('cors') 导入中 ...

  3. 037_Clone Button

    ResolutionTo do this first go to Setup | Customize | Accounts | Buttons and Links | New. Enter the f ...

  4. JS篇(002)-JavaScript 中如何检测一个变量是一个 String 类型?

    答案:三种方法(typeof.constructor.Object.prototype.toString.call()) 解析: ①typeof typeof('123') === "str ...

  5. D. Steps to One

    题意 初始有一个空数组\(a\),接下来每次操作会这么做: 在\([1,n]\)中选择一个数,将其拼接在数组\(a\)后. 计算数组\(a\)的\(\gcd\). 如果结果是\(1\),退出. 否则, ...

  6. 织梦清除文章后后台页码异常怎么办?dedecms页码缓存更新设置

    织梦dedecms当我们清除大量文章后,发现织梦后台文章列表的页码还是原来的数量或者页码显示异常,该怎么办呢?其实是因为dedecms页码有缓存更新设置,DeDeCMS有缓存机制,有些比较费时的SQl ...

  7. noi 1.1 2 输出第二个整数

    描述 输入三个整数,把第二个输入的整数输出. 输入 只有一行,共三个整数,整数之间由一个空格分隔.整数是32位有符号整数. 输出 只有一行,一个整数,即输入的第二个整数. 样例输入 123 456 7 ...

  8. 通过ref调取子组件方法

    子 async update(res){ //this.$refs.child.animates(); this.userform = res; }, 主 <DetailEdit @detail ...

  9. CMD输出文本文件内容的type指令(替代Linux的cat指令)

    :: 本脚本的所有指令本身不输出到屏幕 @echo off :: 打印文本文件内容并匹配关键字,结果不输出到屏幕 type result.txt | find "error" &g ...

  10. 第15章 授权:保护您的应用程序(ASP.NET Core in Action, 2nd Edition)

    本章包括 使用授权控制谁可以使用你的应用 对策略使用基于声明的授权 创建自定义策略以处理复杂的需求 根据所访问的资源授权请求 隐藏用户未经授权访问的Razor模板中的元素 在第14章中,我向您展示了如 ...