runtime.lastError
Cette valeur est utilisée pour signaler un message d'erreur provenant d'une API asynchrone, lorsque l'API asynchrone reçoit un rappel. Cela est utile pour les extensions qui utilisent la valeur basée sur le rappel des API WebExtension.Vpous n'avez pas besoin de vérifier cette propriété si vous utilisez la version basée sur la promesse des API : à la place, passez un gestionnaire d'erreurs à la promesse :
var gettingCookies = browser.cookies.getAll();
gettingCookies.then(onGot, onError);
La propriété runtime.lastError
est définie lorsqu'une fonction asynchrone a une condition d'erreur qu'elle doit signaler à son appelant.
Si vous applez une fonction asynchrone qui veut définir lastError
, vous devez vérifier l'erreur lorsque vous gérez le résultat de la fonction. Si lastError
a été défini et que vous ne cochez pas dans la fonction de rappel, une erreur sera générée.
Syntaxe
var myError = browser.runtime.lastError; // null or Error object
Valeur
Examples
Définir un cookie, utiliser pour enregistrer le nouveau cookie ou signaler une erreur :
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);
La même chose, mais en utilisant une promesse de gérer le résultat de setCookie()
:
function logCookie(c) {
console.log(c);
}
function logError(e) {
console.error(e);
}
var setCookie = browser.cookies.set({ url: "https://developer.mozilla.org/" });
setCookie.then(logCookie, logError);
Note : runtime.lastError
est un alias pour extension.lastError
: Ils sont ensemble, et la vérification de l'un fonctionnera.
Compatibilité des navigateurs
BCD tables only load in the browser
Example extensions
Note :
Cette API est basée sur l'API Chromium chrome.runtime
. Cette documentation est dérivée de runtime.json
dans le code de Chromium code.
Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.