runtime.lastError
Dieser Wert wird verwendet, um eine Fehlermeldung von einer asynchronen API zu melden, wenn der asynchronen API ein Callback übergeben wird. Dies ist nützlich für Erweiterungen, die die auf Callback basierende Version der WebExtension-APIs verwenden.
Es ist nicht erforderlich, diese Eigenschaft zu überprüfen, wenn Sie die auf Versprechen basierende Version der APIs verwenden: Stattdessen übergeben Sie einen Fehler-Handler an das Versprechen:
const gettingCookies = browser.cookies.getAll();
gettingCookies.then(onGot, onError);
Die runtime.lastError
-Eigenschaft wird gesetzt, wenn eine asynchrone Funktion eine Fehlerbedingung hat, die sie ihrem Aufrufer melden muss.
Wenn Sie eine asynchrone Funktion aufrufen, die lastError
setzen könnte, wird erwartet, dass Sie den Fehler überprüfen, wenn Sie das Ergebnis der Funktion verarbeiten. Wenn lastError
gesetzt wurde und Sie es nicht innerhalb der Callback-Funktion überprüfen, wird ein Fehler ausgelöst.
Syntax
let myError = browser.runtime.lastError; // null or Error object
Wert
Beispiele
Setzen Sie ein Cookie und verwenden Sie ein Callback, um das neue Cookie zu protokollieren oder einen Fehler zu melden:
function logCookie(c) {
if (browser.runtime.lastError) {
console.error(browser.runtime.lastError);
} else {
console.log(c);
}
}
browser.cookies.set({ url: "https://developer.mozilla.org/" }, logCookie);
Dasselbe, aber mit einem Versprechen, um das Ergebnis von setCookie()
zu bearbeiten:
function logCookie(c) {
console.log(c);
}
function logError(e) {
console.error(e);
}
const setCookie = browser.cookies.set({
url: "https://developer.mozilla.org/",
});
setCookie.then(logCookie, logError);
Hinweis:
runtime.lastError
ist ein Alias für extension.lastError
. Sie werden zusammen gesetzt, und die Überprüfung eines von beiden wird funktionieren.
Beispielerweiterungen
Browser-Kompatibilität
Hinweis:
Diese API basiert auf der chrome.runtime
API von Chromium. Diese Dokumentation ist abgeleitet von runtime.json
im Chromium-Code.