我试图理解下面两个"要求"语句之间的区别.

具体来说,围绕着ipcMain{ }是为了什么?

const electron = require('electron')

const {ipcMain} = require('electron')

它们似乎都分配了electron模块的内容,但功能明显不同.

有人能解释一下吗?

推荐答案

第二个例子使用了解构.

这将调用从所需模块导出的特定变量(包括函数).

例如(functions.js):

module.exports = {
   func1,
   func2
}

包含在您的文件中:

const { func1, func2 } = require('./functions')

现在你可以单独给他们打电话,

func1()
func2()

而不是:

const Functions = require('./functions')

使用点符号称为:

Functions.func1()
Functions.func2()

希望这有帮助.

您可以阅读关于destructuring here的内容,它是ES6中非常有用的一部分,可以用于数组和对象.

Node.js相关问答推荐

运行JEST测试时找不到模块&q;错误

购物车是空的状态|本地存储不更新产品数量|Redux|

谷歌应用程序脚本UrlFetchApp和nodejs-axios返回不同的结果;MyFitnessPal日记

Express Web 服务器部署到 prod 但 GET 返回超时错误

在mongoose虚拟属性中处理异步操作

在 Nest 项目上运行 Jest 测试时,我的文件无法找到一个在测试之外没有任何问题的模块

为什么 client.on("messageCreate") 的 TextChannel 中缺少 nsfw 属性?

看起来这段代码try GET 请求发送的值变为空白

在系统启动时启动本地 node 服务器

使用`useLocalStorage`和`useDebounce`时如何解决Next.js中的react-hydration-error

如何使用 node 在 koa.js 中发送响应

将 AllowDiskUse true 添加到 node.js 中的 MongoDB 聚合?

在数组的另一个对象中获取数组的mongoose 对象

baseurl64 缓冲区解码

使用 grunt 服务器,如何将所有请求重定向到根 url?

通过 npm 导入 Sass

向 Stripe 提交付款请求时出现没有此类令牌错误

Node.js 应用程序有周期性的缓慢和/或超时(不接受传入的请求)

yarn 和 npm 的主要区别是什么?

deno vs ts-node:有什么区别