0Pricing
React Academy · Lección

Configuración de React con Electron

Configure Electron con Vite y React, prepare contextBridge para una IPC segura y ejecute la aplicación en modo de desarrollo.

Configuración de React con Electron es una lección gratuita de React Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de React Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de React Academy incluye 4 lecciones en total.

Descripción general de la configuración del proyecto

Configurar React con Electron comienza por crear un proyecto de React con Vite y, después, añadir electron y electron-builder como devDependencies. El proyecto termina teniendo dos puntos de entrada: la aplicación de Vite para el proceso de renderizado y un archivo main.js para el proceso principal de Electron.

El archivo main.js

main.js es el punto de entrada de Electron. Crea un BrowserWindow con las dimensiones y la configuración de seguridad deseadas y, después, carga la aplicación React: apunta a localhost:5173 durante el desarrollo y a una ruta de archivo compilado en producción.

electron-vite: el kit de herramientas recomendado

electron-vite es una herramienta de compilación todo en uno que integra Vite con Electron y gestiona automáticamente la compleja configuración de compilación multiproceso. Proporciona configuraciones independientes de Vite para los procesos principal, de precarga y de renderizado, y simplifica considerablemente las compilaciones de desarrollo y producción.

Configuración de vite.config.js

Al configurar Vite para Electron, debe establecer objetivos de navegador explícitos en lugar de depender de la detección automática, porque el proceso de renderizado se ejecuta en una versión específica de Chromium integrada en Electron. electron-vite lo gestiona automáticamente, pero las configuraciones manuales requieren especificar la versión de Chrome en el objetivo de compilación.

El flujo de desarrollo

Ejecutar electron-vite dev inicia simultáneamente el servidor de desarrollo de Vite para el proceso de renderizado y el proceso principal de Electron. El servidor de desarrollo de Vite proporciona Hot Module Replacement, por lo que los cambios en sus componentes React aparecen al instante en la ventana de Electron sin necesidad de reiniciar por completo la aplicación.

Hot Module Replacement en Electron

HMR funciona en el proceso de renderizado de Electron igual que en un navegador: los componentes editados se vuelven a renderizar al instante y conservan su estado. Solo los cambios en main.js o en el script de precarga requieren reiniciar por completo Electron, ya que se ejecutan fuera del límite de HMR de Vite.

Configuración de TypeScript

Los proyectos de Electron + React + TypeScript necesitan archivos tsconfig separados para main (con destino a Node.js/CommonJS), preload (con destino a un entorno similar al navegador con globales de Node) y renderer (TypeScript estándar para navegador). electron-vite crea automáticamente estas configuraciones.

Configuración de contextBridge

El script de precarga utiliza contextBridge.exposeInMainWorld para exponer su API personalizada al proceso de renderizado. Un patrón habitual consiste en exponer un espacio de nombres como "api" con funciones que encapsulan llamadas a ipcRenderer.invoke, lo que proporciona a los componentes React una interfaz asíncrona y clara para las operaciones del proceso principal.

Acceder a las API expuestas desde React

Desde cualquier componente React, llame a window.api.myFunction() para invocar la API expuesta por la precarga. Los usuarios de TypeScript suelen añadir una declaración global (window: Window & { api: MyAPI }) para obtener comprobación de tipos y autocompletado para la interfaz expuesta.

Compilación para producción

electron-vite build compila los tres objetivos (main, preload, renderer) en la carpeta dist/. Después, electron-builder los empaqueta en un instalador específico para cada plataforma. El main.js de producción carga el proceso de renderizado desde la ruta del archivo incluido en el paquete, en lugar de hacerlo desde la URL del servidor de desarrollo.

Errores comunes de configuración

Los errores de configuración más frecuentes son olvidar nodeIntegration:false y contextIsolation:true (lo que crea vulnerabilidades de seguridad), cargar la URL incorrecta en main.js (desarrollo frente a producción) e importar directamente módulos de Electron en el proceso de renderizado (lo que provoca fallos). Los valores predeterminados de electron-vite evitan la mayoría de estos problemas.

Comando de desarrollo de electron-vite

¿Qué se consigue al ejecutar electron-vite dev?

Resumen de la lección

La configuración de React con Electron se simplifica gracias a electron-vite, que gestiona la complejidad de la compilación multiproceso. El flujo de desarrollo ofrece compatibilidad completa con HMR, contextBridge protege la superficie de la API del proceso de renderizado y las configuraciones independientes de TypeScript garantizan que cada proceso tenga el entorno de tipos correcto. Las compilaciones de producción utilizan electron-builder para crear paquetes específicos para cada plataforma.

Preguntas frecuentes

¿La lección «Configuración de React con Electron» es gratis?

Sí — el texto completo de «Configuración de React con Electron» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de React Academy, actualiza a CoddyKit PRO. El curso de React Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Configuración de React con Electron»?

Configure Electron con Vite y React, prepare contextBridge para una IPC segura y ejecute la aplicación en modo de desarrollo. Practicas React Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar React Academy?

No se requiere experiencia previa. React Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Configuración de React con Electron»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de React Academy?

Sí. Cada lección de React Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Arquitectura de Electron: procesos principal y de renderizado
  2. Configuración de React con Electron
  3. Comunicación IPC entre procesos
  4. Empaquetado y distribución para plataformas de escritorio
← Volver a React Academy