2024年最新的 Node.js 安装与环境配置教程

以下是2024年最新的 Node.js 安装与环境配置教程,适用于 Windows、macOS 和 Linux 系统。

一、什么是 Node.js?

Node.js 是一个基于 V8 引擎的 JavaScript 运行环境,主要用于开发服务端应用程序。它的特点是异步事件驱动和非阻塞 I/O,适合高性能应用。

二、Node.js 安装

1. 下载 Node.js 安装包

前往 Node.js 官方网站:Node.js 官网

  • 长期支持版本 (LTS):推荐用于生产环境。
  • 最新版本 (Current):适合尝试新功能或非生产环境。

2024 最新版本:当前 LTS 版本为 20.x,最新版本为 21.x

2. 安装 Node.js

Windows 系统

  1. 下载 MSI 安装包
    • 下载适合你系统架构的版本(32 位或 64 位)。
  2. 运行安装程序
    • 双击安装程序,按照提示完成安装。
    • 选中“Add to PATH”选项,这样可以自动配置环境变量。
  3. 验证安装: 打开命令行工具(如 PowerShell 或 CMD),输入:bash复制代码
node -v
npm -v

如果显示 Node.js 和 npm 的版本号,则安装成功。

macOS 系统

  1. 使用官方安装包
    • 下载 .pkg 文件并运行安装程序。
  2. 使用 Homebrew 安装(推荐): 如果你已安装 Homebrew,可通过以下命令安装:
brew install node

3. 验证安装: 打开终端,输入:

node -v
npm -v

Linux 系统

Node.js 提供适用于主流 Linux 发行版的安装方法:

使用 NodeSource 安装
  1. 添加 NodeSource 仓库:bash复制代码
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -

替换 20.x 为所需的 Node.js 版本。

2. 安装 Node.js:

sudo apt-get install -y nodejs

3. 验证安装:

node -v
npm -v
使用包管理工具安装
  • Debian/Ubuntu
sudo apt update
sudo apt install -y nodejs npm

CentOS/RHEL

sudo yum install -y nodejs

3. Node.js 的多版本管理

开发时可能需要管理多个 Node.js 版本,推荐使用 nvm(Node Version Manager)。

安装 nvm:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

注意:替换为最新版本号 v0.39.5

使用 nvm:

  1. 列出可用版本:
nvm ls-remote

2. 安装指定版本:

nvm install 20.6.0

3. 切换版本:

nvm use 20.6.0

4. 设置默认版本:

nvm alias default 20.6.0

三、环境配置

1. 检查全局路径和权限

验证全局包路径:

npm config get prefix

如果权限不足,可修改全局路径:

mkdir "${HOME}/.npm-global"
npm config set prefix "${HOME}/.npm-global"

将路径加入环境变量:

export PATH="${HOME}/.npm-global/bin:${PATH}"

2. 配置镜像源(国内用户)

国内用户可将 npm 源切换到更快的镜像:

npm config set registry https://registry.npmmirror.com/

验证配置:

npm config get registry

四、测试 Node.js 开发环境

1. 运行 Hello World 程序

创建一个文件 app.js,输入以下内容:

const http = require('http');

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello, World!\n');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});

运行程序:

node app.js

访问 http://localhost:3000 查看输出。

2. 安装常用全局工具

安装一些常用的 Node.js 工具来辅助开发:

  • nodemon:自动重启 Node.js 应用。
npm install -g nodemon

eslint:代码质量检查工具。

npm install -g eslint

五、常见问题及解决

  1. npm 版本过旧: 升级 npm:
npm install -g npm@latest

2. 权限错误: 如果在安装全局包时遇到权限问题,考虑使用 nvm 或配置本地路径。

3. 路径未配置: 确保 nodenpm 已添加到 PATH 环境变量中。

通过上述步骤,你的 Node.js 环境应该已经安装完毕,并可以开始开发了!🎉

发布者:myrgd,转载请注明出处:https://www.object-c.cn/4436

Like (0)
Previous 2024年11月23日 下午1:56
Next 2024年11月23日 下午2:09

相关推荐

  • 在 Ant Design ProTable 中,如何设置不分页,依然显示分页信息,前端分页不触发

    在 Ant Design ProTable 中,默认情况下,分页是与数据请求(request)相关联的。也就是说,每当分页切换时,request 会被触发,重新请求新的数据。如果你希望在禁用分页的同时,依然显示分页控件,并且不触发 request 请求,可以通过以下方法进行配置。解决方案要在 Ant Design ProTable 中禁用分页的同时保留分页信…

    2024年11月29日
    00
  • 部署 Harbor 时,如果运行 install 脚本报错可能导致问题的

    在部署 Harbor 时,如果运行 install 脚本报错,可能是网络问题导致的。以下是排查网络问题的方法: 1. 检查网络连通性 测试目标网络的连通性: 检查 DNS 配置: 如果解析失败,检查 /etc/resolv.conf 中的 DNS 配置,或者尝试手动指定公共 DNS,如 Google 的 8.8.8.8 或阿里云的 223.5.5.5。 2.…

    2024年12月9日
    00
  • 在 Nuxt.js 应用中,webpack 的 compile 事件钩子构建过程

    在 Nuxt.js 应用中,webpack 的 compile 事件钩子通常用于在构建过程中处理或监听 Webpack 编译的状态。webpack 是 Nuxt.js 中的核心构建工具之一,而 Nuxt.js 本身是基于 Webpack 配置的,允许你通过扩展 Webpack 配置来进行自定义。要使用 webpack 的 compile 事件钩子,首先你需要…

    2024年11月29日
    00
  • 把一个矩形div变成一个直角三角形

    要将一个矩形 div 变成一个直角三角形,可以通过 CSS 的一些属性进行实现。具体的方法是利用 border 属性来隐藏矩形的部分,留下一个直角三角形的形状。以下是实现的步骤:CSS 方法: 解释:width 和 height 设置为 0:通过将 div 的宽度和高度设置为 0,实际上把矩形的主体部分隐藏了。border-left 和 border-bot…

    2024年11月27日
    00
  • 在开发 Angular 项目时,使用 RangeSlider 控件时的常见问题

    在开发 Angular 项目时,使用 RangeSlider 控件时,可能会遇到一些常见的问题。以下是一些问题及其解决方案:1. 滑块值不更新问题描述:当用户拖动滑块时,滑块的值不会实时更新,或者显示的值不正确。解决方案:确保绑定的模型是双向绑定,使用 ngModel 或者监听 input 事件来确保滑块值能实时更新。例如: 确保你已经导入了 FormsMo…

    2024年11月27日
    00
  • 使用 Webpack 5 优化构建减少生成文件的体积提升前端性能

    在使用 Webpack 5 时,优化构建以减少生成文件的体积是提升前端性能的重要一步。以下是一些常见的优化方法和策略: 1. 开启生产模式 确保构建时使用生产模式,Webpack 会自动应用多种优化(如代码压缩、Tree Shaking 等): 或在配置文件中明确设置: 2. 启用 Tree Shaking Tree Shaking 是 Webpack 内置…

    2024年12月3日
    00
  • uni-app 一个使用 Vue.js 开发所有前端应用的框架跨端开发的优势

    uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到 iOS、Android、Web(响应式)、以及各种小程序(微信 / 支付宝 / 百度 / 头条 / QQ / 钉钉)等多个平台,其跨端开发具有以下优势: 开发效率高 跨平台兼容性好 性能优化 生态丰富 学习成本低

    2024年12月22日
    00
  • 在 Vue3 和 uniapp 的 H5 环境中使用 QRCode.toDataURL() 生成二维码时无法显示的问题

    1. 图片格式或生成的 DataURL 处理问题QRCode.toDataURL() 方法通常会生成一个 Base64 编码的 PNG 图片。某些 Android 浏览器或 WebView 可能对 Base64 编码的图片支持不好,或者由于资源限制无法正常解析。解决方法:尝试通过生成二维码的图片 URL 直接展示而非使用 Base64 编码。可以通过将二维码…

    2024年11月27日
    00
  • Jeewx-Api 1.3.1 发布:更简易的微信小程序开发 API 降低了开发成本

    Jeewx-Api 1.3.1 发布:更简易的微信小程序开发 API Jeewx-Api 是一款开源的微信开发 SDK,支持微信公众号、小程序、企业微信等全场景开发。1.3.1 版本针对小程序功能做了全面优化,为开发者提供了更简洁易用的 API,降低了开发成本。 1. 新版本亮点 支持微信小程序功能 更简洁的 API 支持企业微信与公众号 2. Jeewx-…

    2024年12月3日
    00
  • Python 的 json模块序列化数据从文件里读取出来或存入文件

    Python 的 json 模块用于处理 JSON 格式的数据,可以将 JSON 数据与 Python 数据结构之间相互转换。以下是具体用法,包括从文件读取 JSON 数据以及将数据写入文件: 1. 将 JSON 数据从文件中读取到 Python 数据结构 代码示例: 解析过程: 2. 将 Python 数据结构写入到文件中(序列化为 JSON) 代码示例:…

    2024年11月26日
    00
  • 解决 Vue 3 应用部署到 GitHub Pages 后,遇到 404 错误问题

    在将 Vue 3 应用部署到 GitHub Pages 后,遇到 404 错误通常是由于 GitHub Pages 处理路由时的问题。Vue 3 使用 Vue Router 来管理前端路由,而 GitHub Pages 本身是静态托管服务,不支持处理 SPA(单页面应用)的客户端路由。因此,当你直接访问某个页面 URL(比如 https://youruser…

    2024年11月29日
    00
  • 如何用pbootcmsAPI接口开发微信小程序UNIAPP

    使用 PbootCMS 的 API 接口结合 UniApp 开发微信小程序,可以实现高效的内容管理和展示。以下是一个完整的开发流程,包括 API 接口设置、小程序功能设计和开发细节。 1. 准备工作1.1 配置 PbootCMS API 接口PbootCMS 提供 API 功能,需在后台开启并配置:登录 PbootCMS 后台管理。前往 系统管理 -> AP…

    2024年11月28日
    00
  • 微信小程序使用 map 组件实现拖动地图并获取当前地图中心的经纬度

    在微信小程序中,使用 map 组件可以轻松实现拖动地图并获取当前地图中心的经纬度。以下是实现步骤和代码示例: 实现思路 代码实现 1. 页面 WXML 添加 map 组件并设置属性。 2. 页面 WXSS 定义地图样式和中心点标记样式。 3. 页面 JS 初始化地图中心点的经纬度,并监听地图拖动。 4. 中心点图标 将一个中心标记图标放置在地图中间。可以在小…

    2024年11月25日
    00
  • 在 Jupyter Notebook 中使用 Markdown 的相关技巧

    在 Jupyter Notebook 中使用 Markdown 是一种常见的方式来撰写文档和注释,增强数据分析和报告的可读性。Markdown 在 Jupyter Notebook 中不仅支持标准的文本格式化功能,还提供了许多扩展功能,比如数学公式、表格、代码块等。以下是一些常用的 Markdown 技巧,可以帮助你提升 Jupyter Notebook 中…

    2024年11月27日
    00
  • python反爬-图像验证码与滑块验证码的跳过反selenium检测,动态ip等问题

    针对反爬措施,Python可以使用以下策略来跳过图像验证码与滑块验证码、反检测Selenium,以及通过动态IP规避限制。这是一个分步说明: 1. 图像验证码的跳过与破解1.1 图像验证码处理对于简单的图像验证码,可以使用 OCR 技术直接识别验证码内容。常用库包括:Tesseract-OCR: 一款开源 OCR 工具。Pytesseract: Tesser…

    2024年11月28日
    00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

在线咨询: QQ交谈

邮件:723923060@qq.com

关注微信