Corepack 如何与 npm 交互?


【How does Corepack interact with npm?】

虽然 Corepack 可以像其他包管理器一样支持 npm,但它的 shim 默认情况下并未启用。这会带来一些后果:

【While Corepack could support npm like any other package manager, its shims aren't enabled by default. This has a few consequences:】

  • 在一个配置为使用其他包管理器的项目中运行 npm 命令始终是可能的,因为 Corepack 无法拦截它。
  • 虽然 npm"packageManager" 属性中的一个有效选项,但缺少 shim 会导致使用全局 npm。