Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

439
Vistas
Electron: envío de datos de app.getPath desde el proceso principal al proceso de representación

Dado:

 webPreferences: { nodeIntegration: false, contextIsolation: true, sandbox: true, }

Necesito acceder al resultado de app.getPath("appData") en mi proceso de representación.

app.getPath("appData") solo funciona en el proceso principal.

contextBridge.exposeInMainWorld() solo funciona en el script de precarga.

¿Cómo expongo el resultado de app.getPath("appData") al renderizador si el script de precarga no puede acceder a app.getPath("appData") y el proceso principal no puede acceder a contextBridge.exposeInMainWorld() ?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Puedes

  • configure el script de precarga para llamar a la exposeInMainWorld en el mundo principal para colocar una función de invocación de promesas en la ventana. Cuando se invoca, realiza una solicitud al proceso principal.
  • configure el proceso principal para responder a las solicitudes del script de precarga con la información deseada
 // Main process: ipcMain.handle('getPath', () => app.getPath("appData"));
 // Preload: contextBridge.exposeInMainWorld('electronAPI', { getPath: () => ipcRenderer.invoke('getPath') });
 // Renderer: window.electronAPI.getPath() .then((appDataPath) => { // ... }) .catch(handleErrors);

El script de precarga actúa esencialmente como un puente entre la página de espacio aislado y el proceso principal privilegiado; a menudo, la mayor parte de la lógica de una aplicación vivirá en el proceso principal o en el renderizador, y la precarga solo los une.

Para un enfoque más generalizado de envío de mensajes desde el renderizador al principal (posiblemente mientras se espera una respuesta), encontré que lo siguiente funciona bastante bien:

 // Preload: contextBridge.exposeInMainWorld('electronAPI', { sendMessageToMainProcess: (channel: string, payload: unknown) => ipcRenderer.invoke(channel, payload), });
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda