前端包管理工具有很多,比如npm,yarn,pnpm,cnpm,npx等,但推荐使用:pnpm+开代理软件,其常用指令在:pnpm指令
npm问题:可能出现版本不一致,^x.y.z代表主版本x不变,其他yz都安装最新版,所有依赖的层级都是这样,这样导致某些依赖可能因为下级依赖的版本不一致而无法使用,但可通过lock文件避免
yarn问题:通过缓存机制加快了下载依赖的速度,但并没有实现真正依赖复用
pnpm优势:支持lock锁版本,且通过硬链接 实现依赖复用,不同项目可共用同一版本依赖
npm,yarn,pnpm共享远程仓库,但远程仓库服务器位于国外,所以出现了国内镜像源工具cnpm,即安装依赖时请求国内服务器,国内服务器将已备份依赖发给用户
npx安装时如果已经全局安装过了就会用全局安装的依赖,如果没有全局安装就临时下载使用,但它不会被package.json记录
npm i -g后可运行命令的原因:将依赖安装到全局并且把命令链接到了依赖中的可执行文件
npm link原理:将当前仓库映射到全局,这样就无需先推送远程仓库后再全局下载使用