Zum Hauptteil springen

Anwendungs Debugging

Wann auch immer deine Electron App sich nicht so verhält wie gewünscht, dann stehen dir eine Vielzahl von Debugging-Tools zur Verfügung um Fehler im Code, einen Flaschenhals für die Pervormance oder Möglichkeiten zur Optimierung zu finden.

Renderer-Prozess

Das umfassendste Tool zum Debuggen individueller Render-Pozesse ist das Chromium Developer Toolset. Das Toolset steht zur Verfügung in allen Render-Prozessen, inklusive Instanzen von BrowserWindow, BrowserView und WebView. Du kannst diese programmatisch öffnen durch Aufruf der openDevTools() API auf webContents der Instanz:

const { BrowserWindow } = require('electron')

const win = new BrowserWindow()
win.webContents.openDevTools()

Google bietet ausgezeichnete Dokumentation für ihre Entwickler-Tools. Wir empfehlen Ihnen, sich mit ihnen vertraut zu machen - sie sind in der Regel ein der leistungsstärksten Werkzeuge in jedem Werkzeuggurt von Electron Developer.

Main-Prozess

Debugging des Main-Prozess ist etwas schwieriger, denn du kannst die Developer Tools hier nicht öffnen. The Chromium Developer Tools can be used to debug Electron's main process thanks to a closer collaboration between Google / Chrome and Node.js, but you might encounter oddities like require not being present in the console.

For more information, see the Debugging the Main Process documentation.

V8 Abstürze

Wenn der V8-Kontext abstützen sollte, wird folgende Nachricht in DevTools angezeigt:

DevTools was disconnected from the page. Once page is reloaded, DevTools will automatically reconnect.

Chromium Logs können durch das Einstellen der Umgebungsvariabel ELECTRON_ENABLE_LOGGING aktiviert werden. For more information, see the environment variables documentation.

Alternativ kann dies aber auch durch das Argument --enable-logging im Terminal aktiviert werden. More information is available in the command line switches documentation.