电子将数据从ipcMain发送到ipcRender

时间:2018-10-12 16:06:34

标签: javascript reactjs electron

在我的React组件中,从componentDidMount中的文件加载数据,我将空发送ipcRenderer.send("loading", "go");激活ipcMain侦听器,并使他将数据发送到React组件中的ipcRenderer侦听器。当应用开始向ipcRenderer侦听器发送消息时,我是否可以让电子发送数据而没有空发送。

反应组件代码:

componentDidMount(){
ipcRenderer.send("loading", "go");

ipcRenderer.on("sending", (event, arg) => {
  let arg_sorted = arg.tasks.sort((a,b) => this.dateSord(a.date, b.date));
  this.setState({
    items: arg_sorted,
  });
});}

电子:

ipcMain.on("loading", (event, arg) => {
   let data = store.parseFile();
   event.sender.send("sending", data); });

1 个答案:

答案 0 :(得分:0)

  

应用启动时可以让电子发送数据吗

不是马上,因为您的BrowserWindow尚未准备好。但是您可以使用'dom-ready'事件在适当的时间进行。

win.webContents.on('dom-ready', () => {
  let data = ...
  win.webContents.send('sending', data)
})
win.loadURL(...)