两者都是包管理工具
npm缺点:npm install速度慢,可能会出现安装版本不一致出现bug,如果在安装过程中出现了错误,仍会继续安装下去,这就会导致错误信息被遮盖
yarn优点:
速度快:
npm安装是按队列执行每一个包,只有在当前包安装成功后才会安装下一个包;yarn则是并行安装而且如果曾经安装过某个包,再次使用时会从缓存中获取
安装版本统一:
yarn有一个锁定文件(lock file)记录了被安装的模块的版本号,每当安装一个新的模块,就会更新这个文件;
npm 其实也有办法实现处处使用相同版本的 packages,但需要开发者执行 npm shrinkwrap 命令,通过 shrinkwrap 命令生成 npm-shrinkwrap.json 文件,只有当这个文件存在的时候,packages 版本信息才会被记录和更新。 简洁: yarn输出更简洁,只会打印出必要的信息,也提供了一些命令让开发者查询额外的安装信息;npm的输出信息比较冗长,执行npm install xxx
时命令行里会不断地打印出所有被安装上的依赖。
多注册来源处理
一个包不管被其他库引用多少次,在安装时只会从一个注册来源安装,要么npm要么bower
更语义化:
标签:npm,文件,yarn,一个包,shrinkwrap,安装
From: https://www.cnblogs.com/qianduan-Wu/p/16884472.html