第二章 【前端】 环境准备
2.1 Node.js
-
Node.js
官网:https://nodejs.cn/
Node.js
是一个免费的、开源的、跨平台的JavaScript
运行时环境,允许开发人员在浏览器之外编写命令行工具和服务器端脚本。 -
nvm
官网:https://github.com/nvm-sh/nvm
nvm(Node Version Manager)
是一个Node.js
版本管理工具,可以方便地在同一台机器上安装、管理多个Node.js
版本。由于不同的项目可能需要使用不同的Node.js
版本,nvm
可以帮助开发人员快速地在不同的Node.js
版本之间切换,避免版本冲突的问题。 -
npm
官网:https://www.npmjs.com/
npm(Node Package Manager)
是一个Node.js
的包管理器,用于安装、管理、卸载JavaScript
模块。npm
提供了一个包管理器,使得开发人员可以方便地使用第三方模块,同时也可以将自己编写的模块发布到npm
上供其他人使用。 -
nrm
官网:https://github.com/Pana/nrm
nrm(npm registry manager)
是npm
镜像源管理工具,用于快速地在不同的npm
源之间切换。在中国大陆,由于网络的原因,npm
的默认源可能会出现下载速度较慢或者无法访问的情况,nrm
可以帮助开发人员快速地切换到可用的源,提高包的下载速度。 -
npx
官网:https://github.com/npm/npx
npx(npm package executor)
是一个npm
包执行器。我们可以使用npx
来执行各种命令。
2.1.1 nvm
之所以选择 nvm
而不选择 nvm-windows
,是因为 nvm
支持通过 nvm use
命令,读取 .nvmrc
文件指定的 node
版本号,自动切换 node
版本,从而使团队成员统一 node
版本(4.1节具体介绍),而 nvm-windows
不支持。
注意
国内链接
Github
不稳定,建议使用Github
加速器或科学上网;出现链接服务器错误,多尝试几遍。
-
运行安装脚本。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
根据环境不同,可能会出现两种错误:
-
错误一
-
错误原因
该域名未被
DNS
服务器成功解析。 -
解决办法
使用其他
DNS
服务(如Google
的8.8.8.8
)来解析该域名。安装完成记得恢复之前的设置。
-
-
错误二
-
错误原因
windows
版本的curl
依靠WinSSL / WinTLS
(也就是微软的Secure Channel
,见 https://msdn.microsoft.com/en-us/library/aa380123.aspx )来提供https
支持,而Linux
版本的curl
依靠的是openssl
,两者表现不一致。 -
解决办法
给
curl
添加--ssl-no-revoke
参数,关闭证书吊销检查功能。
-
-
-
重新运行安装脚本
-
针对错误一
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
-
针对错误二
curl -o- --ssl-no-revoke https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
提示没有找到配置文件,需要手动创建一个配置文件。
-
-
创建配置文件
touch ~/.profile
我们参考官网创建
.profile
,否则重启命令行会报警告。如:创建~/.bashrc
,会警告「发现~/.bashrc
但无~/.bash_profile
、~/.bash_login
或~/.profile
。这看起来像一个错误安装。将通过加载~/.bashrc
为你创建~/.bash_profile
」。 -
再次运行安装脚本
提示「关闭并重新打开你的终端,开始使用
nvm
」 -
重新打开
Git Bash
,测试nvm
nvm -v
-
使用
nvm
安装node
默认国外安装源速度太慢,我们切换到国内镜像(参考:https://github.com/coreybutler/nvm-windows)。
运行下列命令,将镜像地址追加到
.profile
最后一行:echo "export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node/" >> .profile
-
安装最新稳定版
node
,当前是node v22.9.0 (npm v10.8.3)
nvm install stable
- 安装最新稳定版本
当前是
node v22.9.0 (npm v10.8.3)
。nvm install stable
-
安装指定版本
可具体版本安装也可模糊版本安装,如:
nvm install v18.18.0
或nvm install 18.18.0
(安装具体版本v18.18.0
),nvm install 18.18
(安装v18.18
的最后一个版本v18.18.2
),nvm install 18
(安装v18
的最后一个版本v18.20.4
)。nvm install <version>
-
删除已安装的指定版本
语法与
install
用法一致。nvm uninstall <version>
-
切换指定版本
-
临时版本,只在当前窗口生效。
nvm use <version>
-
永久版本,所有窗口都生效。
nvm alias default <version>
注意
:在任意一个命令行窗口进行切换之后,其他的窗口或其他命令行工具窗口需要关掉工具,重启才能生效
。(例如VSCode
内或外部命令切换之后,需要重启VSCode
,才能正常生效,否则或处于临时生效状态
,也就是在VSCode
中重新打开一个命令行查看版本还会是旧版本,所以必须要重启。)
这里的重启
不是简单的关掉窗口重启,没有退出后台进程,而是完全退出杀死工具进程,重新启动。 -
-
列出所有安装的版本
nvm ls
-
列出所有远程服务器的版本
nvm ls-remote
-
显示当前的版本
nvm current
-
给不同的版本号添加别名
nvm alias <name> <version>
-
删除已定义的别名
nvm unalias <name>
-
在当前版本环境下,重新全局安装指定版本号的
npm
包nvm reinstall-packages <version>
-
查看更多命令
nvm
-
2.1.2 nrm
-
安装
npm install -g nrm
「4 packages are looking for funding」并不是错误提示,而是提醒我们,有一些软件包正在寻求资金支持。
-
查看可选源
nrm ls
在
node v21.0.0
以上会报废弃警告。 -
切换源
nrm use taobao