Vue3从零开始(一)
环境配置
前端项目使用nodejs进行开发,需要先安装nodejs环境。
访问nodejs官网Node.js — Download Node.js®,选择开发使用的操作系统以及包管理工具,根据页面提示完成安装。下面是在linux系统下,使用fnm安装Node.js,并启用pnpm包管理工具的命令。
# Download and install fnm:
curl -o- https://fnm.vercel.app/install | bash
# Download and install Node.js:
fnm install 22
# Verify the Node.js version:
node -v # Should print "v22.16.0".
# Download and install pnpm:
corepack enable pnpm
# Verify pnpm version:
pnpm -v
📥官网下载页面:
相关概念
Node.js
Node.js 是一个开源、跨平台的 JavaScript 运行时环境,允许JavaScript 代码脱离浏览器环境在服务器端运行。
Node.js环境管理工具 fnm & nvm
fnm
和 nvm
是Node.js的环境管理工具,用于在同一台计算机中安装和使用多个不同版本的运行时环境。
开发时可以通过环境管理工具来安装运行时环境,简化了环境安装过程,避免多环境导致的各种运行问题。
🔍 核心区别对比
特性 | nvm | fnm |
---|---|---|
实现语言 | Bash 脚本 | Rust 编译型程序 |
性能 | 启动和切换版本较慢,尤其在 shell 初始化时 | 启动和切换版本速度快,几乎无延迟 |
跨平台支持 | 支持 macOS 和 Linux,不支持 Windows | 支持 macOS、Linux 和 Windows(包括 PowerShell 和 CMD) |
安装方式 | 通过 shell 脚本安装 | 提供多种安装方式,如 Homebrew、Scoop、Chocolatey 等 |
自动版本切换 | 支持 .nvmrc 文件 |
支持 .nvmrc 和 .node-version 文件 |
CI/CD 兼容性 | 依赖 shell,可能在无 shell 环境下受限 | 作为独立二进制程序,更易于在 CI/CD 环境中使用 |
社区和生态 | 成熟,社区庞大,文档丰富 | 新兴,社区较小,但文档完善,易于上手 |
🧪 示例命令对比
操作 | nvm 命令 | fnm 命令 |
---|---|---|
查看可用版本 | nvm ls-remote |
fnm ls-remote |
安装指定版本 | nvm install 22.16.0 |
fnm install 22.16.0 |
使用指定版本 | nvm use 22.16.0 |
fnm use 22.16.0 |
设置默认版本 | nvm alias default 22.16.0 |
fnm default 22.16.0 |
Node.js包管理器 npm & yarn & pnpm
npm
、yarn
和 pnpm
是 JavaScript 生态中常用的包管理器,用于安装软件包和管理依赖。
开发过程中使用的框架以及各种工具需要通过包管理器进行安装,保证项目运行时依赖包的一致性。
📦 核心功能对比
特性 | npm | yarn | pnpm |
---|---|---|---|
发布年份 | 2010 | 2016 | 2016 |
开发者 | npm, Inc.(现为 GitHub 子公司) | Meta(前 Facebook)等 | 社区驱动 |
默认包管理器 | 是(Node.js 默认) | 否 | 否 |
安装速度 | 较慢 | 较快 | 非常快 |
磁盘空间使用 | 高 | 中 | 低(使用硬链接) |
node_modules 结构 | 扁平结构 | 扁平结构 | 非扁平结构,使用符号链接 |
工作区支持 | 支持 | 支持 | 支持 |
离线安装 | 支持 | 支持 | 支持 |
安全性 | 提供 npm audit 工具 |
使用校验和确保数据完整性 | 使用校验和,防止幻影依赖 |
插件系统 | 无 | 支持 | 支持 |
特殊功能 | npx 命令执行包 |
Plug'n'Play(PnP) | 内容寻址存储、侧效缓存等 |
npm
的安装速度最慢,如无必要可以使用 yarn
替换即可,对安装速度有要求可以使用 pnpm
替代。