切换原因
因为最近Monorepo的项目管理方式比较流行,但是使用Monorepo管理的每个项目都有自己的package.json,会导致不同项目需要重复安装会造成大量冗余,而且安装时间较长。
所以选择了 pnpm,pnpm 是一款快速、高效使用磁盘空间的包管理器。本文不详细介绍 pnpm,如有需要可以访问官方网站查看详情
本文默认已经全局安装 pnpm
卸载 npm 包
rm -rf node_modules
创建.npmrc文件
# pnpm 配置
shamefully-hoist=true
auto-install-peers=true
strict-peer-dependencies=false
转换 lock 文件
pnpm import
重新安装 pnpm
pnpm install
限制包管理器为pnpm
由于 pnpm 和 npm 包管理有些许不一致的地方,为了保证安装的完整,添加 pnpm 包管理限制
"scripts": {
"preinstall": "npx only-allow pnpm"
}