yarn的介绍与操作,yarn和npm的选择

🧶 一、Yarn 是什么?

Yarn 是由 Facebook(Meta)开发的 JavaScript 包管理工具 ,用于替代 npm,解决它在早期版本中存在的一些问题。

✅ Yarn 的优势(v1.x):

  • 📦 更快:并行安装依赖包;
  • 📂 更稳定:引入 yarn.lock 锁定依赖版本;
  • 🛡️ 更安全:默认校验包的完整性;
  • 💬 更清晰的输出日志。

🧑‍💻 二、Yarn 安装

✅ 使用 npm 安装(建议):

bash 复制代码
npm install -g yarn

安装完成后验证版本:

bash 复制代码
yarn -v

📌 三、Yarn 的常用命令对比 npm

操作 npm 命令 yarn 命令
初始化项目 npm init / npm init -y yarn init / yarn init -y
安装所有依赖 npm install yarn install
安装依赖 npm install axios yarn add axios
安装开发依赖 npm install eslint --save-dev yarn add eslint --dev
卸载依赖 npm uninstall axios yarn remove axios
更新依赖 npm update yarn upgrade
添加指定版本 npm install axios@1.4.0 yarn add axios@1.4.0
执行脚本 npm run build yarn build
清缓存 npm cache clean --force yarn cache clean

📁 四、Yarn 生成的文件结构

bash 复制代码
my-app/
├── node_modules/
├── package.json
├── yarn.lock       ← 用于锁定依赖版本(等价于 npm 的 package-lock.json)

💡 五、Yarn vs npm:如何选择?

对比点 npm yarn
默认安装 ✅ Node.js 自带 ❌ 需手动安装
安装速度 ⏳ 稍慢(单线程) ⚡ 更快(并行)
锁版本文件 package-lock.json yarn.lock
命令简洁性 需要 npm run xxx 可以直接 yarn xxx
社区支持 最广泛 稍弱(但稳定)
易用性 更熟悉 语法更清爽
node_modules 构建 全部复制 更优化但可读性低
推荐场景 所有人 追求速度/现代化团队

🟨 注意事项:不要混用 npmyarn

避免在同一个项目中混用两个包管理器,否则会出现依赖混乱:

  • 只保留 package-lock.json(使用 npm)
  • 或只保留 yarn.lock(使用 yarn)

建议团队协商统一使用一种。


🎯 总结推荐

  • 初学者 / 官方推荐 / 保守选手 👉 使用 npm
  • 追求构建速度 / 命令简洁 / CI 优化 👉 使用 yarn
相关推荐
玖釉-1 小时前
用 Vue + DeepSeek 打造一个智能聊天网站(完整前后端项目开源)
前端·javascript·vue.js
Q_Q5110082855 小时前
python+django/flask的眼科患者随访管理系统 AI智能模型
spring boot·python·django·flask·node.js·php
Q_Q5110082857 小时前
python+django/flask的在线学习系统的设计与实现 积分兑换礼物
spring boot·python·django·flask·node.js·php
编程社区管理员8 小时前
React 发送短信验证码和验证码校验功能组件
前端·javascript·react.js
学习3人组8 小时前
Node.js 登录接口实现
node.js
全马必破三8 小时前
React“组件即函数”
前端·javascript·react.js
三思而后行,慎承诺8 小时前
React 底层原理
前端·react.js·前端框架
座山雕~8 小时前
html 和css基础常用的标签和样式
前端·css·html
Q_Q5110082858 小时前
python+django/flask的车辆尾气检测排放系统-可视化大屏展示
spring boot·python·django·flask·node.js·php
灰小猿9 小时前
Spring前后端分离项目时间格式转换问题全局配置解决
java·前端·后端·spring·spring cloud