Herramientas de desarrollo de Electron
Para el desarrollo de Electron se recomienda usar VS Code. Si aún no estás familiarizado con VS Code, puedes consultar nuestroTutorial de VS Code。
Dirección de descarga de VS Code:https://code.visualstudio.com/。
VS Code en sí mismo está construido con Electron, por lo que tiene ventajas de soporte naturales para el desarrollo de Electron:
- Terminal integrada
- Potente funcionalidad de depuración
- Amplio ecosistema de complementos
- Integración con Git
- Sugerencias inteligentes (IntelliSense)
- Completamente gratuito y de código abierto
Recomendación de complementos imprescindibles para VS Code
| Nombre del complemento | Descripción de la función |
|---|---|
| Electron Snippets | Proporciona fragmentos de código y autocompletado para la API de Electron |
| Prettier – Code Formatter | Unifica el estilo del código y formatea automáticamente |
| ESLint | Verifica errores de sintaxis y problemas de estilo |
| Debugger for Chrome | Te permite depurar el proceso de renderizado del frontend en VS Code |
| Node.js Modules Intellisense | Sugiere automáticamente funciones de módulos de Node.js |
| Path Intellisense | Sugerencias inteligentes de rutas de archivo |
| npm Intellisense | Sugiere automáticamente nombres de paquetes npm |
| Auto Rename Tag / Auto Close Tag | Autocompletado inteligente de etiquetas HTML |
| GitLens | Mejora la experiencia visual del versionado de código con Git |
Depuración con Chrome DevTools (proceso de renderizado)
El proceso de renderizado de Electron es en realidad unapágina del navegador Chromium,
Por lo tanto, puedes depurar directamente con Chrome DevTools como lo harías con una página web.
Habilitar DevTools
Enmain.jsAl crear la ventana, agrega:
Ejemplo
width: 800,
height: 600
});
win.loadFile('index.html');
// Abrir las herramientas de desarrollador
win.webContents.openDevTools();
Contenido que se puede depurar
- Código HTML / CSS / JS
- Solicitudes de red (Network)
- Registros de la consola (Console)
- Estructura del DOM
- Análisis de rendimiento (Performance)
- Fugas de memoria (Memory)
Consejo
La depuración del proceso de renderizado es casi igual que en Chrome, por lo tanto:
- Puedes usar
console.log()para enviar información de depuración - También puedes usar directamente los atajos de teclado de Chrome (
Cmd + Option + I/Ctrl + Shift + I) para abrir DevTools
Técnicas de depuración del proceso principal de Electron
El proceso principal no es una página web, sino un entorno Node.js, por lo que el método de depuración es diferente al de una página web.
Método 1: Usar el depurador integrado de VS Code
En la raíz del proyecto, crea un.vscode/launch.jsonarchivo.
El contenido es el siguiente (se puede usar directamente):
{
"version": "0.2.0",
"configurations": [
{
"name": "Electron 主进程调试",
"type": "node",
"request": "launch",
"program": "${workspaceFolder}/node_modules/electron/dist/electron.js",
"args": ["."],
"outputCapture": "std",
"runtimeExecutable": null,
"cwd": "${workspaceFolder}"
}
]
}
Luego, en
main.jsestablece un punto de interrupción y haz clic en Depurar ▶️. ¡Listo!
Método 2: Depuración remota por línea de comandos
Al iniciar, agrega el parámetro:
electron . --inspect=5858
Luego abre en la barra de direcciones de Chrome:
chrome://inspect
De este modo podrás conectarte remotamente al proceso principal y depurar con puntos de interrupción, igual que con Node.js.
Resumen de técnicas de depuración comunes
| Objetivo de depuración | Herramienta/Método | Descripción |
|---|---|---|
| La interfaz de la ventana va lenta | Chrome DevTools → Performance | Analizar el tiempo de renderizado y los cuellos de botella en la ejecución de JS |
| La ventana se cierra de repente | Agregar try/catch en el proceso principal o usarelectron-logregistro de logs |
Capturar excepciones del proceso principal |
| Errores de comunicación IPC | EnipcMain / ipcRendererAgregar logs en |
Depurar la comunicación entre el proceso principal y el de renderizado |
| Errores de ruta de archivo | Usarpath.join(__dirname, 'xxx') |
para evitar problemas de rutas relativas |
| Depuración del empaquetado | Usarelectron-builder --direl modo de compilación de directorio primero |
para poder ejecutar y depurar directamente |
Recomendación de herramientas avanzadas
| Herramienta | Uso |
|---|---|
| Electron Forge | Herramienta de scaffolding recomendada oficialmente, para crear y empaquetar proyectos rápidamente |
| Electron Builder | Potente herramienta de empaquetado y publicación |
| Electron Reload | Actualiza la aplicación automáticamente al modificar archivos |
| Spectron | Se utiliza para pruebas automatizadas de aplicaciones Electron |
| Devtron | Extensión de depuración oficial de Electron para analizar el estado interno de la aplicación |
| React / Vue DevTools | Si usas un framework de frontend, es muy conveniente depurar el estado de los componentes |
Otras extensionesEscribe con VS Code, observa con DevTools, depura con launch.json y empaqueta con Builder: esta es la cadena de herramientas completa para un desarrollador profesional de Electron.