1、什么是pnpm?
pnpm
全称 performant npm
,意思是高性能的 npm。pnpm
由 npm/yarn
衍生而来,解决了 npm/yarn
内部潜在的 bug,极大的优化了性能,扩展了使用场景。被誉为 "最先进的包管理工具"。
2、pnpm特点
速度快、节约磁盘空间、支持 monorepo
、安全性高。
3、安装
直接执行全局安装命令:npm install pnpm -g
安装失败了
1)遇到问题1:
提示node版本太低了,安装pnpm至少需要node 16.14
版本以上,这种报错就直接升级node版本即可,或者如果系统有多个node版本,选择高版本node。
查看当前系统已经安装了node和npm:
因为我之前有nvm管理,所以选择一个高版本的node就好了,没有nvm的可查看:mac系统nvm教程
2)遇到问题2:
提示说 http://registry.npmjs.org/pnpm 请求失败了,分析原因其实是因为国内直接访问pnpm可能需要科学上网,解决办法就是设置代理。
设置使用代理淘宝镜像: npm config set registry https://registry.npm.taobao.org
接着就查看当前使用的镜像:npm config get registry
然后再执行全局安装命令,等待安装完成pnpm -v
就能查看安装的版本了:
4、pnpm常用命令
javascript
// 使用,更多命令:https://pnpm.io/zh/cli/install
pnpm install // 等价于 npm install 安装全部的依赖包
pnpm add 包名 // 等价于 npm install 包名
pnpm add -S 包名 // -S 默认写入dependencies
pnpm add -D 包名 // -D 默认写入devDependencies
pnpm add -g 包名 // 全局安装
// 更新, 更多命令:https://pnpm.io/zh/cli/update
pnpm up // 更新所有依赖,遵守package.json中指定的范围
pnpm up --latest // 更新所有依赖项,此操作会忽略 package.json 指定的范围
// 移除,更多命令:https://pnpm.io/zh/cli/remove
pnpm remove 包名 // 移除指定包
pnpm remove 包名 --global // 移除全局的指定包