前言
yarn
依赖于npm
,是npm中的一个包
与npm相比,yarn
有着众多的优势,主要的优势在于:执行校验,并行执行,离线模式,版本控制。
-
执行校验:Yarn会在每个安装包被执行前校验其完整性。
-
并行执行:npm会等一个包完全安装完才跳到下一个包,但yarn会并行执行包,因此速度会快很多。网上有不少比较npm和yarn安装同样多依赖的执行速度,yarn在速度方面优势明显。
-
离线模式:离线的原理比较简单,安装过的包会被保存进缓存目录,以后安装就直接从缓存中复制过来,这样做的本质还是会提高安装下载的速度,避免不必要的网络请求。
-
版本控制:为了防止拉取到不同的版本,Yarn 有一个锁定文件 (lock file) 记录了被确切安装上的模块的版本号。每次只要新增了一个模块,Yarn 默认就会创建(或更新)
yarn.lock
文件,而 npm 要通过npm shrinkwrap
命令生成npm-shrinkwrap.json
文件,以此来锁定模块版本 -
更简洁的输出:npm 的输出信息比较冗长,相比之下,Yarn 简洁太多:默认情况下,结合了 emoji直观且直接地打印出必要的信息,也提供了一些命令供开发者查询额外的安装信息。
多注册来源处理:所有的依赖包,不管他被不同的库间接关联引用多少次,安装这个包时,只会从一个注册来源去装,要么是 npm 要么是 bower, 防止出现混乱不一致。
安装
安装
npm install --global yarn
检查版本
yarn --version
命令
npm | yarn |
---|---|
npm install | yarn |
npm install react --save | yarn add react |
npm uninstall react --save | yarn remove react |
npm install react --save-dev | yarn add react --dev |
npm update --save | yarn upgrade |
更详细的使用方法可以查看:yarn中文文档