ipcMain слушатель не регистрируется правильно - PullRequest
0 голосов
/ 18 мая 2019

У меня проблемы с сообщениями ipc между основными процессами и процессами рендеринга в электронном приложении.

ipcRenderer правильно отправляет сообщение (я вижу его из devtron), но ipcMain ничего не слушает

код в main.js

const {ipcMain} = require("electron");
...
let mainWindow;

function createWindow() {
...
  ipcMain.on("mainWindow-minimize", (event, arg) 
  => {
    console.log("On minimize from main");
    mainWindow.minimize();
  });
...
}

app.on("ready", createWindow);

код в renderer.jsx

import React from "react"
impor {ipcRenderer} from "electron"
...
export default class App Extends React.Component {
  constructor(props) {
    super(props);
    this.headerOnClick = this.headerOnClick.bind(this);
  }

  headerOnClick(message, event) {
    console.log("button clicked");
    ipcRenderer.send(message)
  }
  render() {
    return (
      <button onClick={() => this.headerOnClick("mainWindow-minimize", event)} />
    )
  }
}

1 Ответ

0 голосов
/ 18 мая 2019

Я думаю, вам нужно вызвать функцию createWindow в main для создания слушателя.

...