gpt4 book ai didi

electron - 在 Electron 中将数据传递到 Windows

转载 作者:行者123 更新时间:2023-12-02 18:56:56 24 4
gpt4 key购买 nike

我正在学习 Electron 并使用多个窗口和 IPC。在我的主脚本中,我有以下内容:

var storeWindow = new BrowserWindow({
width: 400,
height: 400,
show: false
});

ipc.on('show-store-edit', function(event, store) {
console.log(store);
storeWindow.loadURL('file://' + __dirname + '/app/store.html');
storeWindow.show();
});

在我的主窗口脚本中,我在点击事件处理程序中包含以下内容,拉入商店列表:

$.getJSON("http://localhost:8080/stores/" + item.id).done(function(store) {
ipc.send('show-store-edit', store);
});

在控制台上,我正在打印服务器上的商店数据。我不清楚如何将该数据放入我的 storeWindow:store.html View 中。我什至不确定我是否正确处理了事件的顺序,但它们是:

  • 点击“编辑商店”
  • 从服务器获取商店数据
  • 打开新窗口以显示商店数据

  • 点击“编辑商店”
  • 打开新窗口以显示商店数据
  • 从服务器获取商店数据

在后者中,我不确定如何从 storeWindow 的 脚本获取获取商店所需的 ID。

最佳答案

要将事件发送到特定窗口,您可以使用webContents.send(EVENT_NAME, ARGS) ( see docs )。 webContents 是窗口实例的属性:

// main process
storeWindow.webContents.send('store-data', store);

要监听发送的此事件,您需要在窗口进程(渲染器)中使用监听器:

// renderer process
var ipcRenderer = require('electron').ipcRenderer;
ipcRenderer.on('store-data', function (event,store) {
console.log(store);
});

关于electron - 在 Electron 中将数据传递到 Windows,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36773711/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com