IDBRequest.onerror
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
le gestionnaire d'événement onerror de l'interface IDBRequest capte l'événement error, déclenché quand une requête renvoie une erreur.
Le gestionnaire d'événement reçoit l'événement error avec le type="error" en paramètre.
Note : Cette fonctionnalité est disponible via les Web Workers.
Syntaxe
request.onerror = function( event ) { ... };
Exemple
L'exemple suivant demande un titre d'enregistrement donné, onsuccess obtient l'enregistrement associé au magasin d'objets (mis à disposition en tant que objectStoreTitleRequest.result), on met à jour une propriété de l'enregistrement, puis le sauve dans le magasin d'objets. En bas le gestionnaire d'événement onerror affiche le code d'erreur si la requête échoue. Pour un exemple de travail complet, voir notre To-do Notifications app (view example live).
var title = "Walk dog";
// Ouvrez une transaction comme d'habitude
var objectStore = db
.transaction(["toDoList"], "readwrite")
.objectStore("toDoList");
// Obtenez l'objet toDoList qui a ce titre
var objectStoreTitleRequest = objectStore.get(title);
objectStoreTitleRequest.onsuccess = function () {
// Prenez l'objet de données renvoyé comme résultat
var data = objectStoreTitleRequest.result;
// Mettre à jour la valeur notified de l'objet à "yes"
data.notified = "yes";
// Créer une autre requête qui insère le nouvelle élément dans la base de données
var updateTitleRequest = objectStore.put(data);
// Lorsque cette requête réussit, appelle de la fonction displayData() pour mettre à jour l'affichage
updateTitleRequest.onsuccess = function () {
displayData();
};
};
objectStoreTitleRequest.onerror = function () {
// Si une erreur se produit à la demande, on l'affiche
console.log(
"Il y a eu une erreur dans la récupération des données: " +
objectStoreTitleRequest.error,
);
};
Spécifications
| Specification |
|---|
| Indexed Database API 3.0> # eventdef-idbrequest-error> |
Compatibilité des navigateurs
Chargement…
Voir aussi
- Using IndexedDB
- Error Event
- Starting transactions:
IDBDatabase - Using transactions:
IDBTransaction - Setting a range of keys:
IDBKeyRange - Retrieving and making changes to your data:
IDBObjectStore - Using cursors:
IDBCursor - Reference example: To-do Notifications (view example live.)