在 Windows 上安装 Node.js

如果你不熟悉如何使用 Node.js 进行开发,但想要快速启动和运行以便学习,请按照以下步骤直接在 Windows 上安装 Node.js。

注意

如果你是使用 Node.js 的专业人士、发现性能速度和系统调用兼容性很重要、想要运行利用 Linux 工作区的 Docker 容器并避免维护 Linux 和 Windows 生成脚本,或只是倾向于使用 Bash 命令行,则在适用于 Linux 的 Windows 子系统(更具体地说就是 WSL 2)上安装 Node.js

安装 vm-windows、node.js 和 npm

除了选择在 Windows 还是在 WSL 上安装,安装 Node.js 时还要作出其他选择。 建议使用版本管理器,因为版本变更速度非常快。 你可能需要根据所使用的不同项目的需要在多个 Node.js 版本之间进行切换。 Node 版本管理器(通常称为 nvm)是安装多个版本的 Node.js 的最常见方法,但仅适用于 Mac/Linux,在 Windows 上不受支持。 相反,我们建议安装 nvm-windows,然后使用它来安装 Node.js 和 Node Package Manager (npm)。 下一节中还会介绍供考虑的替代版本管理器

重要

在安装版本管理器之前,始终建议从操作系统中删除 Node.js 或 npm 的任何现有安装,因为不同的安装类型可能会导致出现奇怪和混淆的冲突。 这包括删除可能保留的任何现有的 Node.js 安装目录(例如,“C:\Program Files\nodejs”)。 NVM 生成的符号链接不会覆盖现有的(甚至是空的)安装目录。 有关删除先前安装的帮助,请参阅如何从 Windows 中完全删除 node.js

警告

NVM 被设计为逐个用户安装并按 shell 调用。 它不适用于共享开发人员盒或具有多个生成代理的生成服务器。 NVM 通过使用符号链接运行。 在共享方案中使用 NVM 会产生问题,因为此类链接指向用户的应用数据文件夹,因此如果用户 x 运行 nvm use lts,则链接会将整个盒的节点指向其应用数据文件夹。 如果用户 y 运行节点或 npm,将被定向为在 x 的用户帐户下运行文件,并且在使用 npm -g 的情况下会修改 x 的文件,这在默认情况下是不允许的。 因此 nvm 仅适用于单个开发人员盒。 对于生成服务器也是同样的道理。 如果两个生成代理位于同一 VM/盒上,它们可能会相互竞争,并在生成中导致异常行为。

  1. 请遵循 windows-nvm 存储库上的安装说明。 建议使用安装程序,但如果对需求有更深入的了解,可能需要考虑手动安装。 安装程序将指向最新版本发布页面

  2. 下载最新版本的 nvm-setup.zip 文件。

  3. 下载完成后,打开 zip 文件,然后打开 nvm-setup.exe 文件。

  4. Setup-NVM-for-Windows 安装向导将引导你完成安装步骤,包括选择将在其中安装 nvm-windows 和 Node.js 的目录。

    NVM for Windows 安装向导

  5. 安装完成后。 打开 PowerShell(建议使用提升的管理员权限打开),尝试使用 windows-nvm 来列出当前安装的 Node 版本(此时应为无):nvm ls

    显示无 Node 版本的 NVM 列表

  6. 安装 Node.js 的当前版本(用于测试最新的功能改进,但比 LTS 版本更容易出现问题):nvm install latest

  7. 要安装 Node.js 的最新稳定 LTS 版本(建议),首先通过 nvm list available 查找当前的 LTS 版本号,然后使用 nvm install <version> 安装 LTS 版本号(将 <version> 替换为版本号 nvm install 12.14.0)。

    可用版本的 NVM 列表

  8. 列出安装的 Node 版本:nvm ls。现在应会看到刚安装的两个版本。

    显示已安装的 Node 版本的 NVM 列表

  9. 在安装所需的 Node.js 版本后,通过输入 nvm use <version>(请将 <version> 替换为版本号,即 nvm use 12.9.0)来选择要使用的版本。

  10. 要更改要用于项目的 Node.js 版本,请创建新的项目目录 mkdir NodeTest,输入目录 cd NodeTest,然后输入 nvm use <version>,将 <version> 替换为要使用的版本号(即 v10.16.3`)。

  11. 验证哪个 npm 版本安装了 npm --version,此版本号将自动更改为与当前版本的 Node.js 关联的 npm 版本。

替代版本管理器

虽然 windows-nvm 目前是最常用的节点版本管理器,但也有一些其他选择:

  • nvs(Node 版本切换器)是跨平台的 nvm 替代方法,可与 VS Code 集成

  • Volta 是来自 LinkedIn 团队的新版本管理器,它声称改进了速度和跨平台支持。

要将 Volta 安装为版本管理器(而不是 windows-nvm),请参阅其入门指南的“Windows 安装”部分,然后按照安装说明下载并运行其 Windows 安装程序。

重要

安装 Volta 之前,必须确保在 Windows 计算机上启用开发人员模式

要了解有关使用 Volta 在 Windows 上安装多个版本的 Node.js 的详细信息,请参阅 Volta 文档

安装 Visual Studio Code

建议安装 Visual Studio Code,以便在 Windows 上通过 Node.js 进行开发。 有关帮助,请参阅 Visual Studio Code 中的 Node.js 教程

替换代码编辑器

如果倾向于使用代码编辑器或 IDE 而不是 Visual Studio Code,以下各项对于 Node.js 开发环境来说也是不错的选择:

安装 Git

如果计划与其他人协作,或是在开放源代码站点(如 GitHub)上托管项目,则 VS Code 支持使用 Git 进行版本控制。 VS Code 中的“源代码管理”选项卡可跟踪所有更改,并直接在 UI 中内置了常见 Git 命令(add、commit、push、pull)。 需要先安装 Git,以便为“源代码管理”面板提供支持。

  1. git-scm 网站下载并安装适用于 Windows 的 Git。

  2. 其中包含了一个安装向导,该向导会询问一系列有关 Git 安装设置的问题。 建议使用所有默认设置,除非有特定原因需要更改某些设置。

  3. 如果以前从未使用过 Git,则 GitHub 指南可以帮助入门。

  4. 建议向 Node 项目添加 .gitignore 文件。 此处是 GitHub 用于 Node.js 的默认 gitignore 模板

使用适用于 Linux 的 Windows 子系统进行生产

直接在 Windows 上使用 Node.js 非常适合学习和试验可执行的操作。 准备好生成可投入生产的 Web 应用后(通常部署到基于 Linux 的服务器),建议使用适用于 Linux 的 Windows 子系统版本 2 (WSL 2) 来开发 Node.js Web 应用。 许多 Node.js 包和框架是在 *nix 环境下创建的,并且大多数 Node.js 应用都部署在 Linux 上,因此在 WSL 上开发可确保开发环境和生产环境之间的一致性。 要设置 WSL 开发环境,请参阅使用 WSL 2 设置 Node.js 开发环境

注意

如果需要在 Windows 服务器上托管 Node.js 应用程序,最常见的场景似乎是使用反向代理。 可采用两种方式做到这一点:使用 iisnode直接操作。 我们不会保留这些资源,建议使用 Linux 服务器来托管 Node.js 应用