如何获得npm可用但未安装在本地的模块树?

NPM ll负责本地安装的包。但对于未安装的模块或全局安装的模块,它不起作用。

我试过npm列表鲍尔,但那不是它。


当前回答

这是一个没有权力的官方命令:

npm view <PACKAGE> dependencies

它只打印直接依赖项,而不是整个树。

其他回答

你可以在不需要安装的情况下生成NPM依赖树 使用命令建立依赖关系

npm list

这将在当前目录为项目生成一个依赖树,并将其打印到控制台。

你可以像这样得到特定依赖项的依赖树:

npm list [dependency]

还可以通过执行设置最大深度级别

npm list --depth=[depth]

请注意,您只能查看已全局或本地安装到NPM项目的依赖项的依赖树。

这个命令以树形结构输出所有依赖的模块:

npm ls -a

该站点允许您以2D或3D节点图的形式查看包树。

http://npm.anvaka.com/#/view/2d/waterline

@Avanka干得好!

还有一个很好的web应用程序,可以在加权地图类的视图中查看依赖关系。

例如:

https://bundlephobia.com/result?p=sanitize-html@1.19.1

如果你正在使用纱线,那么你可以从项目的根目录中使用纱线列表。它会给你一个所有传递依赖关系的树状结构,如下所示:

├─ @ampproject/toolbox-core@2.7.4
│  ├─ cross-fetch@3.0.6
│  └─ lru-cache@6.0.0
├─ @ampproject/toolbox-optimizer@2.7.0-alpha.1
│  ├─ @ampproject/toolbox-core@^2.6.0
│  ├─ @ampproject/toolbox-runtime-version@^2.7.0-alpha.1
│  ├─ @ampproject/toolbox-script-csp@^2.5.4
│  ├─ @ampproject/toolbox-validator-rules@^2.5.4
│  ├─ abort-controller@3.0.0
│  ├─ cross-fetch@3.0.5
│  ├─ cross-fetch@3.0.5
│  │  └─ node-fetch@2.6.0
│  ├─ cssnano-preset-simple@1.2.0
│  │  ├─ caniuse-lite@^1.0.30001093
│  │  ├─ postcss@^7.0.32
│  │  └─ postcss@7.0.35
│  │     ├─ chalk@^2.4.2
│  │     ├─ source-map@^0.6.1
│  │     └─ supports-color@^6.1.0