Components.utils.reportError
zgłasza obiekt Error JavaScriptu do konsoli błędów. Powinna być wykorzystywana w blokach obsługi wyjątków, które chcą zgłosić dany problem do konsoli.
Metoda ta musi być wywołana z jednym parametrem, którym zwykle jest obiekt przechwycony przez kod obsługi wyjątków. Jeśli parametrem nie jest obiekt Error, parametr konwertowany jest na ciąg znaków i zgłaszany jako nowy błąd. Oznacza to, że metodę Components.utils.reportError
można używać do wysyłania do konsoli błędów wiadomości debugowania, w sposób podobny do tego, w jaki można korzystać z dump() do wypisywania wiadomości na konsolę natywną.
Do informacji dziennika należy jednak używać nsIConsoleService, jako że interfejs ten wysyła wiadomości o zwykłym priorytecie, w przeciwieństwie do reportError
.
function myDump(aMessage) { var consoleService = Components.classes["@mozilla.org/consoleservice;1"] .getService(Components.interfaces.nsIConsoleService); consoleService.logStringMessage("Mój komponent: " + aMessage); }
Przykłady
Zastosowanie w obsłudze wyjątków:
try { ten.kod.wyrzuca.wyjątek; } catch(e) { Components.utils.reportError(e); // wyślij informację o błędzie do konsoli i kontynuuj wykonanie }
Wypisywanie informacji debugowania w konsoli błędów:
Components.utils.reportError("init() called");