【问题标题】:Why is pnpm linking certain dependencies at the top level?为什么 pnpm 在顶层链接某些依赖项?
【发布时间】:2021-04-29 13:42:22
【问题描述】:

如果我跑步:

pnpm install eslint

然后我的node_modules 目录最终包含:

node_modules
  .bin/
  .pnpm/
  @eslint/eslintrc
  eslint
  eslint-scope
  eslint-utils
  eslint-visitor-keys
  .modules.yaml

我似乎找不到关于 eslint 或其依赖项的任何特别之处,但也许我没有找对地方。

唯一有意义的是,pnpm 将这些依赖项提升到顶部仅基于它们以我实际安装的包名称为前缀的事实。不过这看起来确实不对。

我在这里错过了什么?

【问题讨论】:

    标签: pnpm


    【解决方案1】:

    万一其他人撞到了那个挠头:

    答案很简单,public-hoist-pattern 的默认值包含*eslint*,所以所有 eslint 相关的模块都是特殊的。

    见:https://pnpm.io/npmrc#public-hoist-pattern

    【讨论】:

      猜你喜欢
      • 2022-06-23
      • 2018-04-13
      • 2018-04-30
      • 2022-06-10
      • 2020-03-06
      • 2016-06-21
      • 2010-12-23
      • 2015-12-28
      • 1970-01-01
      相关资源
      最近更新 更多