Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

331
Views
No se pudo crear un oyente con electron.ipcRenderer.on

Después de crear una aplicación electrónica con

 npm install create-electron-app -g create-electron-app "Electron App"

se agregó un detector de eventos a index.html colocando esta etiqueta de secuencia de comandos al final del cuerpo.

 <script> const electron = require("electron"); const ipcRenderer = electron.ipcRenderer; ipcRenderer.on('cpu', (event,data) => {// This isn't picking up the sent data. console.log('data is: ' + data); }); </script>

Con el siguiente js para iniciar la aplicación

 const { app, BrowserWindow } = require('electron'); const path = require('path'); const os = require('os-utils'); // irrelevant code left out const createWindow = () => { const mainWindow = new BrowserWindow({ width: 1000, height: 600, webPreferences: { nodeIntegration: true, contextIsolation: false } }); mainWindow.loadFile(path.join(__dirname, 'index.html')); mainWindow.webContents.openDevTools(); os.cpuUsage(function(v){ console.log(v*100); mainWindow.webContents.send('cpu', v*100);// this should send this information to the webpage's ipcRenderer. }); }; app.on('ready', createWindow);

El problema

No pasa nada después de iniciar la aplicación. La consola de desarrollo se abre, pero no se registran datos en la consola desde esta línea: console.log('data is: ' + data);

Cosas que he probado

Intenté envolver el os.cpuUsage(…) un oyente que espera a que se cargue toda la página, como se sugirió en esta respuesta

 mainWindow.webContents.on('did-finish-load', ()=>{ os.cpuUsage(function(v){ console.log(v*100); mainWindow.webContents.send('cpu', v*100);// this should send this information to the webpage's ipcRenderer. }) });

También verifiqué si .on realmente está creando un detector de eventos agregando

 console.log(ipcRenderer.listenerCount())

hasta el final de la etiqueta del script. registró '0'

También intenté cambiar ipcRenderer.on a ipcRenderer.once sin cambios en el comportamiento.

Además, agregué estas líneas de console.log después de las declaraciones const en la etiqueta <script> :

 console.log('test') console.log(electron) console.log(ipcRenderer)

Estos fueron registrados con éxito.

about 4 years ago · Santiago Gelvez
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!