【发布时间】:2018-09-01 15:24:47
【问题描述】:
我知道我可以使用npm install module-name 在 node.js 中安装一个模块。但尝试多次,它会再次安装。我厌倦了忘记我已经在全球范围内安装了模块并且我正在再次安装它们。如何知道 node 中是否已经全局存在模块安装?
【问题讨论】:
-
它实际上并没有再次安装。它只是检查它是否已在 NPM 上更新。如果没有,则不会下载任何内容。
标签: node.js
我知道我可以使用npm install module-name 在 node.js 中安装一个模块。但尝试多次,它会再次安装。我厌倦了忘记我已经在全球范围内安装了模块并且我正在再次安装它们。如何知道 node 中是否已经全局存在模块安装?
【问题讨论】:
标签: node.js
你必须尝试
npm ls
将为您提供已安装模块的列表
列出全局包
npm ls -g
更详细地列出全局包
npm ls -gl
以同样的方式列出本地包的详细信息
npm ls -l
你也可以输入
npm help ls
了解更多详情
【讨论】:
如果您想知道是否安装了特定模块,可以运行npm explore <module>。如果您收到错误,那么您没有该模块,您应该下载它。
这有点小技巧,但它确实有效。
【讨论】:
在你的 js 代码中,这样做:
try {
console.log(require.resolve("some-npm-module-name"));
} catch(e) {
console.error('moduel is not installed');
process.exit(e.code);
}
【讨论】: