在 node 中.JS文件中,我发现一句话是这样说的

当文件直接从 node 运行时.js,require.main设置为

我想问这里的main是什么,我在源代码中找不到这main的定义,有人能帮忙吗,谢谢!

推荐答案

require是一个函数..main是该函数的属性,因此可以引用require.main.您所指的文档的这一部分说明您可以编写如下代码:

if (require.main === module) {
     // this module was run directly from the command line as in node xxx.js
} else {
     // this module was not run directly from the command line and probably loaded by something else
}

在上面的代码中,module是一个变量,它被传递给 node 加载的所有模块.代码基本上说,如果require.main是当前模块,那么当前模块就是从命令行加载的模块.

设置该属性的代码如下:https://github.com/nodejs/node/blob/master/lib/internal/modules/cjs/helpers.js#L44.

Node.js相关问答推荐

如何处理EPIPE时,使用axios并期待413响应?

如何在Node.js 中设置图表js的背景色

如何在mongodb集合中设置数据限制?

如何从谷歌云中部署的应用程序连接到mongoDB Atlas?

Rest-Api动态图像路径和Express除非

将 POST 的 json 变量格式化为 lambda

无法从 mongoDB 访问数据?

更新 mongodb 中的交易值

在路由上使用中间件时,Nodejs Express 应用程序失败

如何删除mongodb中嵌套数组中所有出现的数组元素

图像存储在后端文件夹中,但使用 multer 和 react.js 在前端找不到

表达限制资源属于特定用户的优雅方式

NestJS 共享模块的问题

2 x 匹配标准显示没有结果

使用 node.js 执行一个 exe 文件

NodeJS为exec设置环境变量

Base64 编码一个 javascript 对象

npm WARN 不推荐使用 graceful-fs@3.0.8:graceful-fs 版本 3

Node.js `--nolazy` 标志是什么意思?

如何使用 cookie 创建 HTTP 客户端请求?