表单 html 和提交事件是“渲染器”的一部分。 提交的数据应该在主进程中可用。 提交表单并使该数据在 main.js 中可访问的正确方法是什么?
我应该简单地使用“远程”模块将数据从 main.js 传递给函数还是有更好的方法?
最佳答案
我们使用服务(Angular)来处理窗口中的表单数据。如果需要,然后通知 remote
。
从您的 renderer
您可以将数据发送到 ipc
,然后在您的 main.js
中捕获此事件和传递的表单数据:
// renderer.js
let ipcRenderer = require('electron').ipcRenderer;
ipcRenderer.send('submitForm', formData);
// main.js
ipcMain.on('submitForm', function(event, data) {
// Access form data here
});
您还可以从 main.js
将消息发送回 renderer
。
同步:
// main.js
ipcMain.on('submitForm', function(event, data) {
// Access form data here
event.returnValue = {"any": "value"};
});
或异步:
// main.js
ipcMain.on('submitForm', function(event, data) {
// Access form data here
event.sender.send('formSubmissionResults', results);
});
// renderer.js
ipcRenderer.on('formSubmissionResults', function(event, args) {
let results = args.body;
});
关于javascript - 在 Electron 中处理表单的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43311513/