Node.js - 搜索 "util" 模块;确定核心模块

Node.js - searching for the "util" module; identify core modules

我真的是 Swagger 节点的忠实粉丝module,但有一件事让我抓狂:

示例应用程序包含以下行 (api/controller/hello_world.js):

var util = require('util');

但我无法找到这个模块。我试过

我的问题是:如何列出nodejs中实际加载的模块?

util 是 node.js 分布的一部分:https://nodejs.org/api/util.html

解决了关于 util 模块的 特殊 问题。

至于更一般的问题:

How can I list the actually loaded modules in nodejs?

  • This answer 告诉你如何列出当前加载的非核心模块的完整文件名 (剧透警告:Object.keys(require.cache).

  • 对于 core 模块 - Node.js 本身附带的模块,例如 util - 我无法知道这告诉你哪些是加载的,但考虑到它们是核心,就我们所知(和应该关心)。

  • 也就是说,要测试给定模块是否是核心模块,您可以使用require.resolve(),在核心模块的情况下,returns 按原样输入模块名称(而不是完整的文件名);例如:

    require.resolve('util') // -> 'util', i.e. NOT A PATH -> core module
    

注意:当 require.resolve() returns 文件系统路径时,仅表示该模块是 非核心 并且可以是 位于;它 not 会告诉您该模块当前是否 已加载 (为此使用 require.cache)。