使用preInstall钩子统一团队包管理器

先说结论,在新版的npm,cnpm,pnpm中,该钩子无法达到预期效果,只有yarn完全支持,可以用以下代码自行测试相关包管理器

// 保存为文件pre.js
const argent = process.env.npm_config_user_agent

if (/^(npm|yarn|cnpm)\//g.test(argent)) {
  console.warn('请使用pnpm安装依赖')
  process.exit(1)
} 
// package.json
"scripts": { 
    "preinstall": "node ./pre.js"
    ...其他script
},
相关文章
  1. issue
  2. NPM preinstall 不同版本的差异

你可能感兴趣的:(javascript前端)