我如何列出用户安装/环境包只在npm?

当我执行npm -g list时,它会输出每个包及其依赖项。相反,我希望看到包安装在当前工作的项目或环境中。


当前回答

Node.js有局部模块和全局模块的概念。

本地模块位于当前项目目录中。

全局模块通常位于用户的主目录中,尽管我们可以更改全局模块所在的路径。

列出当前目录中的本地模块:npm list npm list——global OR npm list——g //列出所有顶级模块及其依赖项 只列出顶层(已安装的模块)全局模块:npm List -g——depth=0

其他回答

一种方法可能是使用以下命令找到模块的根目录:

npm root

输出:

    /Users/me/repos/my_project/node_modules

然后列出该目录…

ls /Users/me/repos/my_project/node_modules

输出:

    grunt                   grunt-contrib-jshint

在本例中,用户安装的包是grunt和grunt-contrib-jshint。

对于项目依赖使用:

npm list --depth=0

对于全局依赖使用:

npm list -g --depth=0

> =或:

npm ls -g

<或:

npm ls -g --depth=0

参考:

NPM ls默认情况下只打印第一级依赖项。你可以使用——depth=<n>来设置一个特定的深度,或者——all来打印所有的树。

有关最新版本,请参阅npm文档:npm-ls, depth

node_modules文件夹包含用户安装的包,因此将目录更改为node_modules并列出项目。核心模块定义在Node.js的源代码lib/文件夹中。

例子:

cd ~/node_modules
ls

输出:

     express  maxmind-native  node-whois  socket.io  ua-parser-js
     geoip    mongoskin       pdfkit      tail       zeromq
     maxmind  nodemailer      request     ua-parser  zmq

你可以试试NPM桌面管理器:

只需单击一下,您就可以在dev或全局状态下安装/卸载包。