
yarn 学习总结
发布日期:2021-05-20 04:10:33
浏览次数:18
分类:精选文章
本文共 1688 字,大约阅读时间需要 5 分钟。
yarn 简介
yarn 是由 Facebook、Google、Exponent 和 Tilde 联合推出的一款全新 JS 包管理工具,它依然使用 npm 的 registry,但提供了全新的 CLI 来对包进行管理。yarn 的出现一度导致了 npm 的市场竞争激烈,甚至有传言称 npm 只剩下一个 registry 可用。
yarn 凭借什么横空出世?
yarn诞生是为了解决 npm 存在的一些问题:
依赖目录嵌套层次深:
- npm 的依赖目录结构深度较大,尤其在 Windows 系统上存在问题。
下载速度慢:
- 由于依赖目录嵌套,npm 对包的下载只能是串行进行,导致带宽资源未被充分利用。
- 多次下载相同版本的包。
控制台输出繁杂:
- 安装依赖时会输出大量详细信息,增加了查看错误的难度。
工程移植问题:
- npm 的版本依赖定义模糊,可能导致工程移植后依赖版本不一致。
yarn �nými一个由扁平目录结构、并行下载、本地缓存、控制台简洁输出、yanr-lock 文件记录依赖等手段,有效解决了上述问题。
yarn 的优化与创新
yarn 不仅解决了上述问题,还对以下内容做了优化:
功能强大的命令:
- 提供了一些新的命令。
- 既有的命令更加语义化。
本地安装的 CLI:
- 可以使用 yarn 直接启动。
全局安装移植:
- 将全局安装目录当作普通工程,生成 package.json 文件,便于移植。
yarn 的出现给 npm 带来了巨大压力,npm 在之后的版本(如 npm 6)也进行了全面优化,解决了很多问题,与 yarn 的功能接近甚至在某些方面更优。
yarn 的核心命令
下面是 yarn 的一些核心命令说明:
初始化:
yarn init [--yes / -y]
安装:
- 添加指定包:
yarn [global] add package-name [--dev / -D] [--exact / -E]
- 安装 package.json 中的所有依赖:
yarn install [--production / -prod]
脚本和本地 CLI:
- 运行脚本:
yarn run script-name
(支持省略 `run``)
- 运行本地安装的 CLI:
yarn run cli-name
查询:
- 查看 bin 目录:
yarn [global] bin
- 查询包信息:
yarn info package-name [子字段]
- 列举已安装的依赖:
yarn [global] list [--depth=依赖深度]
更新:
- 列举需要更新的包:
yarn outdated
- 更新包:
yarn [global] upgrade package-name
卸载:
- 卸载包:
yarn remove package-name
yarn 的特别礼物
在终端命令中,yarn 不仅修补了 npm 的命令,还增加了一些全新的命令,这些命令在某些情况下非常实用:
yarn check:
- 使用
yarn check
可以验证 package.json 文件中的依赖记录和 lock 文件是否一致。 - 这对于防止篡改依赖信息非常有用。
yarn audit:
- 使用
yarn audit
命令可以检查本地安装的包是否存在已知漏洞,表格展示漏洞级别,包括:- INFO
- LOW
- MODERATE
- HIGH
- CRITICAL
yarn why:
- 使用
yarn why package-name
命令,可以在控制台打印出指定包的依赖原因,包括哪些包会用到该包。
yarn create:
- 使用
yarn create
命令来便捷地创建项目,这类似于全局安装脚手架工具后使用全局命令的方式。 - 举例如:
yarn create react-app my-app
这一命令等价于:
yarn global add create-react-appcreate-react-app my-app
这个工具的最大优势在于其命令的便捷性和灵活性,能够满足开发者在项目和全局环境之间切换的需求。
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2025年04月16日 14时05分01秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
0基础成功转行网络安全工程师,年薪30W+,经验总结都在这(建议收藏)
2023-01-24
100个电脑常用组合键大全(非常详细)零基础入门到精通,收藏这篇就够了
2023-01-24
10个程序员可以接私活的平台
2023-01-24
10条sql语句优化的建议
2023-01-24
10款最佳免费WiFi黑客工具(附传送门)零基础入门到精通,收藏这一篇就够了
2023-01-24
15个备受欢迎的嵌入式GUI库,从零基础到精通,收藏这篇就够了!
2023-01-24
15个程序员常逛的宝藏网站!!从零基础到精通,收藏这篇就够了!
2023-01-24
2023应届毕业生找不到工作很焦虑怎么办?
2023-01-24
2024 年需要了解的顶级大数据工具(非常详细)零基础入门到精通,收藏这一篇就够了
2023-01-24
2024大模型行业应用十大典范案例集(非常详细)零基础入门到精通,收藏这一篇就够了
2023-01-24
2024年全球顶尖杀毒软件,从零基础到精通,收藏这篇就够了!
2023-01-24
2024年最流行的十大开源渗透测试工具
2023-01-24
2024年网络安全八大前沿趋势,零基础入门到精通,收藏这篇就够了
2023-01-24
2024年薪酬最高的五个网络安全职位,零基础入门到精通,收藏这一篇就够
2023-01-24