如何找到一个依赖于某个模块的本地安装的npm模块?

时间:2016-04-07 11:25:58

标签: javascript node.js npm

我的node.js项目中出现了错误,堆栈跟踪似乎没有指向我正在使用的任何库,是否有一种简单的方法可以找出哪些包依赖于此包在我的node_modules目录中?

理想情况下,此方法不涉及手动检查package.json目录中每个模块的node_modules

2 个答案:

答案 0 :(得分:1)

使用npm ls <module-name>

答案 1 :(得分:0)

您可以使用一些bash脚本来自动执行此操作

who_depends_on() {
    local dependency=$1;
    for file in $(ls node_modules); do
        local match=$(grep $dependency "node_modules/$file/package.json");
        if [[ $match ]]; then
            echo "'$file' is dependant in '$dependency'";
        fi
    done
}

将函数放在存储shell函数的任何位置,然后像这样运行

who_depends_on "your-package-here"

这个软件包的主要警告是它会选择你正在寻找的package.json软件包。