2

我想要的是

最初,mainWindow 是可见的并且 callWindow 是关闭的。

如果我输入 searchInput 并单击 mainWindow 中的按钮,那么我想要:

  • callWindow.show()

  • callWindow 运行this.props.dispatch(push("/calls", {searchInput}))

我被困在哪里

在 main.js...

mainWindow = new BrowserWindow(options)
callWindow = new BrowserWindow(options)
ipcMain.on("buttonClick", (event, arg) => {
    callWindow.show();
    // STUCK! How to make callWindow react code run: this.props.dispatch(push("/calls", {searchInput}))
});

在反应代码中..

onButtonClick() {
    ipcRender.send("buttonClick", input)
}
4

1 回答 1

1
ipcMain.on("buttonClick", (event, arg) => {
    callWindow.show();
    callWindow.webContents.send('dispatch', searchInput);
    // STUCK! How to make callWindow react code run: dispatch(push("/calls", {searchInput}))
});

在 callWindow 渲染器(callWindodw React 代码)

componentDidMount() {
   ...
   ipcRenderer.on('dispatch', (event, searchInput) => {
      this.props.dispatch(push("/calls", {searchInput}))
   })
}
于 2020-05-09T20:43:47.120 回答