从锁定文件中列出依赖项的所有依赖项

List all dependents of a dependency from lock file

是否可以从锁定文件中列出特定依赖项的所有依赖项(npm/pnpm/yarn)?


我知道我可以询问 npm registery,但我正在寻找没有网络调用的解决方案(期望 npm/pnpm/yarn install)

pnpm 和 Yarn 都有一个 why 命令。所以你可以 运行 <yarn|pnpm> why <pkg>.

对于 pnpm,pnpm why <pkg>pnpm ls <pkg> --depth Infinity 的作用相同。这是因为 pnpm 创建了一个非平面 node_modules.

pnpm why glob的输出示例:

@pnpm/registry-mock 1.8.0
├─┬ cpr 3.0.1
│ └─┬ rimraf 2.7.1
│   └── glob 7.1.5
├─┬ rimraf 3.0.0
│ └── glob 7.1.5
└─┬ verdaccio 4.3.4
  ├─┬ bunyan 1.8.12
  │ └─┬ mv 2.1.1
  │   └─┬ rimraf 2.4.5
  │     └── glob 6.0.4
  └─┬ mv 2.1.1
    └─┬ rimraf 2.4.5
      └── glob 6.0.4
tslint 5.20.0
└── glob 7.1.5
verdaccio 4.3.4
├─┬ bunyan 1.8.12
│ └─┬ mv 2.1.1
│   └─┬ rimraf 2.4.5
│     └── glob 6.0.4
└─┬ mv 2.1.1
  └─┬ rimraf 2.4.5
    └── glob 6.0.4