onError()
Abo von Fehlern des Dashlet-Handles. Dies ist der
Fehlerkanal: Fehler, die die Bibliothek beobachten, aber nicht auflösen kann —
Timeouts, Host-Fehler und Fehler, die Ihre eigenen Listener werfen.
1. Signatur
onError(listener: (error: unknown) => void): () => void;
-
listener— erhält den Fehlerwert (unknown: eineTimeoutError, ein Host-Fehler-Payload oder eine durch einen Listener geworfene Ausnahme). -
Gibt eine Abmeldefunktion zurück.
2. Was hier läuft
Die dokumentierte Weiterleitung der Bibliothek (exakt, wie implementiert):
-
Listener-Fehler. Eine von einem
onInit- oderonUpdate-Listener geworfene Ausnahme — einschließlich einer nachgeliefertenonInit-Zustellung an einen späten Abonnenten — wird gefangen und an jedenonError-Listener zugeliefert. Dies ist die primäre Fehlerquelle auf einer ordentlich arbeitenden Dashlet-Seite: ein Bug in Ihrer Render-Funktion erscheint hier, nicht als ungefangene Ausnahme. -
Ersetztes Host-Global (nur Rich Client). Ersetzt anderer Code auf der Seite
window.osDashletInit, gehen die Auswahl-Callbacks des Rich Clients an diesen Code statt an das Dashlet. Sobald das Dashlet im Rich Client aufgelöst ist, erhält jederonError-Listener ein einfachesError, dessen Meldung mitDashlet: window.osDashletInit was replaced by other codebeginnt. Sie kommt höchstens einmal pro Dashlet-Instanz, auch für ein Ersetzen vor der Auflösung des Inits. Die Bibliothek holt sich das Global nicht zurück und leitet keine Host-Aufrufe an die fremde Funktion weiter: Entfernen Sie die zweite Dashlet-Schicht von der Seite. Im Webclient, im Standalone und bei einem Rich Client, der über den Webclient-Wire aufgelöst wurde, gibt es keine Meldung, und ein zweiterinstallDashletGlobal-Aufruf ist kein Ersetzen. Nach der Auflösung des Inits werden nur Zuweisungen beobachtet: eine spätere globale Funktionsdeklaration,Object.defineProperty,deleteoder eine zweite Kopie der Bibliothek bleiben ungemeldet. -
Keine Kaskade. Wenn ein
onError-Listener selbst eine Ausnahme wirft, wird diese verschluckt — ein Fehler-Listener darf nicht kaskadieren. (So kann ein kaputter Fehler-Handler weder den Host-Aufruf noch die anderen Listener mitreißen.)
3. Hinweise
-
onErrorverändert keine Steuerung: Es ist Beobachtung, keine Wiederherstellung. Fehlgeschlagene Methodenaufrufe lehnen weiterhin ihre eigenen Promises ab;onErrorliefert einen zweiten, Nebenspur-Blick. -
Registrieren Sie es früh (Top-Level, neben
installDashletGlobal), damit Listener-Fehler aus der ersten Auflösung nicht verpasst werden.