Tengo una aplicación de electrones y estoy tratando de usar ReactJs con ella. Tengo un código en main.js que envía algunos datos sobre el evento dom-ready :
mainWindow.webContents.on('dom-ready', function () { dao.getIncomes(function (data) { mainWindow.webContents.send('income-data', data); }); }Luego tengo el componente React, donde estoy tratando de configurar un oyente para este evento:
useEffect(() => { ipcRenderer.on('income-data', function (event, data) { // some code }); }, []);A veces, un componente inicia este efecto solo cuando el evento ya se ha enviado. Y el oyente no recibe estos datos.
¿Cómo configuro el oyente correctamente en este caso? O puede ser que deba enviar eventos más tarde, en algún otro evento, en lugar de dom-ready
Gracias.
Creo que primero deberías decirle al electrón que la función en efecto se está Ejecutando。
const { ipcMain } = require('electron') ipcMain.on('react-effect-executed', (event, arg) => { dao.getIncomes(function (data) { mainWindow.webContents.send('income-data', data); }); }) useEffect(() => { ipcRenderer.send('react-effect-executed', ''); ipcRenderer.on('income-data', function (event, data) { // some code }); }, []);