【发布时间】:2016-07-12 01:06:11
【问题描述】:
是否有 NPM 模块可以显示模块内各个 JS 文件之间的依赖关系?
假设我自己的 NPM 模块中有 20 个 JS 文件;我想看看我的 20 个 JS 文件之间的依赖关系树。
【问题讨论】:
-
你知道你不会确定没有其他依赖,因为导入是动态解析的,对吧? (不假装明显依赖关系的图表没有意义)
-
我不确定我是否遵循。通过依赖项的跟踪以
require()语句开始。简单地递归地跟踪它们是一个相对微不足道的问题。我还排除了 package.json 中的依赖项,例如,require('some-module-from-npmjs.org')将被丢弃,而require('./utils/calculator.js')将被遵循。 -
我的意思是
let randomModule = require(names[Math.random()*names.length|0]);是合法的。或者更有用但仍然动态的东西。当然有一些明显的依赖,但是,也有不明显的。 -
啊,真的。我没有想到这一点。假设所有
require()语句都是完全“可知的”:require('./util/calculator.js')。 -
那么我猜像github.com/pahen/madge 这样的工具会起作用
标签: node.js npm dependencies