【随手记】only-allow 统一项目包管理器

611 阅读1分钟

  现在主流的包管理器有npmcnpmyarnpnpm,项目小组内因为使用的包管理器不同,经常会在安装依赖时出现各种问题,在这情况下可以用only-allow工具去强制约束。

应用

  当执行npm install命令时,就会先执行工程自身的preinstall钩子。在package.json中添加以下代码,表示只允许使用 pnpm 来进行安装。

  目前支持设置:npm | yarn | pnpm

"scripts": {
    // ... 其他命令
    "preinstall": "npx only-allow pnpm"
 }

   以下例子为设置只允许用pnpm安装后,输入npm安装命令的反馈。

微信截图_20220510112048.png

拓展

  npm 提供了两种钩子,pre 和 post,代表操作前和操作后。较常见在 build 和 install 处,prebuild,postbuild,preinstall,postinstall