javascript - Electron 中奇怪的 IPC 消息传递行为
问题描述
我的 index.js 文件包含这行代码:
ipcRenderer.send("copy-file-to-local", (fpath, fname))
我的 main.js 文件包含这些代码行:
ipcMain.on("copy-file-to-local", (_event, fpath, fname) => {
// do things!
console.log(fpath)
})
输出事件总是正常工作,输出fpath
返回fname
和输出fname
返回未定义。无论我是否传入event
index.js,都会观察到这种行为。在过去的大约 2 个小时里,我基本上只是困惑地盯着我的控制台。无论我如何改变论点,似乎总是有 2 个论点的限制。是什么黑魔法驱动了这个问题?感谢您的任何帮助,您可以提供。
解决方案
不要在参数周围加上额外的括号,这会将它们变成一个计算结果为一个值的表达式。
function f(arg1, arg2){
console.log(arg1, arg2);
}
f((a, b)) //B, undefined
f(a, b) //A, B
推荐阅读
- python - 通过部分 href 查找元素(Python Selenium)
- c# - 使用 .NET 类库显示表单以响应 COM 事件会冻结表单
- mysql - 获取activejdbc中表的列顺序
- tornadofx - Tornadofx Tableview 行数
- sql - WHERE 子句中的 SQL IF 语句
- spring - Spring stomp over websocket SubscribeMapping 不起作用
- react-native - 带有反应原生导航的优步应用导航
- c# - 以 c# 形式创建 Windows 10 透明效果
- google-app-engine - 如何使用 gcloud 推送最新版本的 Web 应用程序以使其上线
- javascript - 从页面源代码中提取特定变量的内容