各位frontend developer们,时机已经成熟,让我们开始用上pnpm吧

967 阅读3分钟

pnpm是啥?

全称performant npm(高性能的npm),见名知意,就是一个npm的替代品,至于为什么高性能,用什么样的方式解决了依赖包体积趋近于黑洞的问题,比这yarn有什么改进,已经有官网文档无数大佬的解读了,我就不再罗里吧嗦再说一遍了,总之就是又快又好又省空间又省时间又安全!你说咱有啥理由不用呢?

为什么说现在是时机成熟的时刻

因为nodejsv16.16.0版本已经是LTS(长期维护版)了,自16.13之后的版本内置了实验性的工具corepack!

corepack是啥?

文档啊! 不想看的我来给你简单介绍下:就是nodejs内置的一个管理包管理器的一个东西

u=3729687073,1190663887&fm=253&fmt=auto&app=120&f=JPEG.webp

别急,我再通俗的给你解释一下,你看我们平时开发的时候安装依赖都会用到啥

1. npm

2. yarn

3. pnpm

4. ...

是不是很乱?除了nodejs默认自带的npm,别的你是不是还得全局安装下?

这个corepack就是自nodejs v16.13版本之后默认自带的一个工具,专门用来管理这些安装依赖的这些个工具,最重要的是还自带pnpm好家伙!

怎么用上呢?

首先如果你没有装nvm请先装一个nvm,用来保留之前的node版本,不要问我nvm是啥

nvm

linux和osx用户的文档

win用户的文档

nvm升级

如果你是windows用户并且你之前就安装了nvm-windows,想要用corepack管理pnpm,还需要把你的nvm-windows升级到1.1.9版本,因为自1.1.8这个版本才能支持corepack

如果你不是windows,直接看nvm文档中的Install & Update Script的部分升级一下或者安装一下,source一下你的bash/zsh的配置文件就好了

知道怎么升级的、踩过这个坑的可以跳过了

下载安装升级包

首先在仓库的releases页面找到1.1.9版本的,然后找到名为nvm-update.zip的文件,下载解压之后运行里面的nvm-update.exe就可以了

踩坑

在这之前如果你使用nvm安装了16.13及以上版本的nodejs,请先卸载,然后右键你的开始菜单找到Windows PowerShell(管理员)点击,之后再通过

nvm install 16.13.2

安装最新的LTS版本,截至发文,现在最新的LTS版本为16.16.0,大家看情况安装!安装完成之后:

nvm use 16.16.0

切换到指定版本,接着按照pnpm官网的文档,先把实验性的corepack开启

corepack enable

通常corepack中的包管理器版本都不是最新的所以我们要升级到最新,关于最新的pnpm版本号,可以去npmjs官网去看,截至发文,最新版本是7.5.1

corepack prepare pnpm@7.5.1 --activate

换新版本淘宝源

pnpm config set registry https://registry.npmmirror.com

大功告成

此时你就可以pnpm install/dev/build了,gym,起飞 唉 起飞~

1638589973(1).jpg

如果有其他安装过程中的问题,欢迎大家留言讨论!