如何获得不保存到的package.json包的列表?

Fab*_*eli 4 npm

我已经安装了几个包在我的本地机器,但我无法知道我已经安装了哪些。

有一些框架,告诉我哪些软件包和版本安装在我的项目(未保存的,保存和开发保存)?

我试图比较node_modules文件夹,但结果不是很精确。

Rya*_*Zim 7

你需要的是npm listnpm ls很方便的别名)。

假设你跑:

npm init
npm install -S postcss
npm install -D postcss-cli
npm install postcss-import
Run Code Online (Sandbox Code Playgroud)

然后,如果你运行npm list --depth 0,故宫将打印:

my-package@1.0.0 /home/.../my-package
??? postcss@5.2.16
??? postcss-cli@3.0.0-beta
??? postcss-import@9.1.0 extraneous

npm ERR! extraneous: postcss-import@9.1.0 /home/.../my-package/node_modules/postcss-import
Run Code Online (Sandbox Code Playgroud)

extraneous有的所有软件包都已安装,但尚未添加到中package.json

默认情况下,npm list打印完整的依赖关系图。该--depth选项将图形限制为指定的层数。--depth 0仅打印直接依赖关系,而不打印它们的依赖关系,因此在这种情况下,这就是您想要的。