有学有练才叫学习:学而不思则罔,思而不学则殆:学而不习,纸上谈兵,习而不进,画地为牢!

Corepack是什么?(Node.js新宠)Corepack又是什么?

node.js 炮渣日记 1个月前 (11-06) 85次浏览 已收录 0个评论 扫描二维码

废柴NPM即将被Node.js官方抛弃?在 Node.js 16.9.0 的官方文档里多了一个实验工具Corepack,以后也会作为内置CLI管理包管理器(yarn、npm、pnpm)。

Corepack是什么?(Node.js新宠)Corepack又是什么?

详细的介绍可以看官方文档:https://nodejs.org/api/corepack.html

首先把node切换到 16.9.0 以及更高版本后,在package.json配置

{
  "name": "app",
  "packageManager": "yarn@1.22.17"
}

另外建议使用nvm管理node,可以很方便地在不同版本之间切换。

// 在项目中进行配置
corepack enable

// 会先自动安装yarn
yarn install

如果你执行pnpm install就会报错:

Usage Error: This project is configured to use yarn

$ pnpm ...

为什么没有yarn也能直接用,那是因为执行yarn install的时候就会先下载对应的yarn。

实现方式很简单粗暴,直接下载包管理工具然后设置为全局命令:

$ ll ~/.nvm/versions/node/v16.13.1/bin

corepack -> ../lib/node_modules/corepack/dist/corepack.js
node
npm -> ../lib/node_modules/npm/bin/npm-cli.js
npx -> ../lib/node_modules/npm/bin/npx-cli.js
pnpm -> ../lib/node_modules/corepack/dist/pnpm.js
pnpx -> ../lib/node_modules/corepack/dist/pnpx.js
yarn -> ../lib/node_modules/corepack/dist/yarn.js
yarnpkg -> ../lib/node_modules/corepack/dist/yarnpkg.js

不过我遇到了一个问题:指定yarn作为包管理器之后,npm install还是可以正常运行,不知道算不算亲儿子的待遇。

喜欢 (0)
炮渣日记
关于作者:
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址