Yarn和npm同样都是 JavaScript 包管理工具,yarn可以说是更好的解决了npm的产生的问题。
1.下载速度问题
用 npm安装包时这些任务是按顺序一个个执行,这意味着必须等待上一个包安装完后才能开始下一个;而Yarn 是并行的执行这些任务,提高了性能。并且yarn提供了缓存机制,即被安装过的包会被缓存,下次安装不从外网下载,大大的提高了速度。
2.锁包机制
使用npm安装时不会锁定包版本,举个例子,项目中需要使用包A,但包A同时依赖包B,C,D,然而你用npm安装A的时候会默认安装最新版本的B,C,D,这样B,C,D更新后会出现莫名的bug,yarn安装包时会默认锁包,当然npm也可以用指令npm shrinkwrap生成一个锁包文件。
常用的指令
yarn install 简写为yarn ,相当于npm install(i),用来安装。
yarn add ,安装模块,相当于npm install 。
yarn init,初始化项目,相当于npm init。
yarn run,运行项目,相当于npm run。
yarn remove,卸载模块,相当于npm uninstall(un)。
yarn upgrade,更新模块,相当于npm update。
yarn cache clean,清除缓存,相当于npm cache clean。
相比 npm 的默认配置,使用Yarn开发获得了不少赞同 。使用yarn可以更方便的生成锁文件,更高效的安装模块。