Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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 Callback-basierte Version der WebExtension-APIs nutzen.

Es ist nicht erforderlich, diese Eigenschaft zu überprüfen, wenn Sie die auf Versprechen basierende Version der APIs verwenden: übergeben Sie stattdessen einen Fehler-Handler an das Versprechen:

js
const gettingCookies = browser.cookies.getAll();
gettingCookies.then(onGot, onError);

Die Eigenschaft runtime.lastError wird gesetzt, wenn eine asynchrone Funktion eine Fehlersituation hat, die dem Aufrufer gemeldet werden muss.

Wenn Sie eine asynchrone Funktion aufrufen, die lastError setzen könnte, sollten Sie den Fehler überprüfen, wenn Sie das Ergebnis der Funktion verarbeiten. Wenn lastError gesetzt wurde und Sie es innerhalb der Callback-Funktion nicht überprüfen, wird ein Fehler ausgelöst.

Syntax

js
let myError = browser.runtime.lastError;  // null or Error object

Wert

Ein Error-Objekt, das den Fehler repräsentiert. Die Eigenschaft message ist ein string mit einer menschenlesbaren Beschreibung des Fehlers. Wenn lastError nicht gesetzt wurde, ist der Wert null.

Beispiele

Ein Cookie setzen und eine Rückruffunktion verwenden, um das neue Cookie zu protokollieren oder einen Fehler zu melden:

js
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:

js
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: extension.lastError ist ein Alias für runtime.lastError. Sie werden gemeinsam gesetzt, und es funktioniert, wenn Sie einen der beiden überprüfen.

Beispielerweiterungen

Browser-Kompatibilität

Hinweis: Diese API basiert auf der chrome.runtime API von Chromium. Diese Dokumentation stammt aus runtime.json im Chromium-Code.