我正在开发一个 npm 包初始值设定项,即当用户运行 npm init <my-package-initializer>
命令时运行的程序。
npm 不再是 Node.js 的唯一包管理器,yarn 也很受欢迎,pnpm 是我个人的最爱,我想支持这三个。最简单的方法是询问用户他们喜欢哪个包管理器或提供一个命令行开关,如 CRA does。
但是用户已经通过运行 yarn create
而不是 npm init
来表明他们的偏好。再问就觉得烦。我们可以检查 yarn
或 pnpm
是否是我们的父进程。
是否有跨平台的方式来获取这些信息?