From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- files/fr/web/api/idbtransaction/onerror/index.html | 171 +++++++++++++++++++++ 1 file changed, 171 insertions(+) create mode 100644 files/fr/web/api/idbtransaction/onerror/index.html (limited to 'files/fr/web/api/idbtransaction/onerror') diff --git a/files/fr/web/api/idbtransaction/onerror/index.html b/files/fr/web/api/idbtransaction/onerror/index.html new file mode 100644 index 0000000000..18c08c9a57 --- /dev/null +++ b/files/fr/web/api/idbtransaction/onerror/index.html @@ -0,0 +1,171 @@ +--- +title: IDBTransaction.onerror +slug: Web/API/IDBTransaction/onerror +tags: + - API + - IndexedDB + - Propriété + - Reference +translation_of: Web/API/IDBTransaction/onerror +--- +
{{APIRef("IndexedDB")}}
+ +

Le gestionnaire d'événement onerror, rattaché à l'interface {{domxref("IDBTransaction")}}, s'exécute au déclenchement d'un événement error lorsque la transaction échoue.

+ +

{{AvailableInWorkers}}

+ +

Syntaxe

+ +
transaction.onerror = function() { ... };
+ +

Exemple

+ +

Dans le code suivant, on commence par ouvrir une connexion à la base de donnée. Grâce à cette connexion, on initialise une transaction en lecture/écriture grâce à IDBTransaction pour accéder au magasin d'objets intitulé toDoList et y ajouter un enregistrement via la méthode  {{domxref("IDBObjectStore.add")}}. On notera également l'utilisation du gestionnaire d'événements {{domxref("IDBTransaction.oncomplete")}}.

+ +

Le gestionnaire d'événement onerror de la transaction affiche le code d'erreur de la propriété propriété {{domxref("IDBTransaction.error","error")}} sur la page.

+ +
// Connexion à la base de données
+var DBOpenRequest = window.indexedDB.open("toDoList", 4);
+
+DBOpenRequest.onsuccess = function(event) {
+	note.innerHTML += '<li>Connexion établie.</li>';
+
+	// On affecte la connexion à la variable db.
+	db = DBOpenRequest.result;
+
+	// On exécute la fonction addData () pour ajouter
+    // des données dans la base
+	addData();
+};
+function addData() {
+	// On crée un nouvel objet prêt à être emmagasiné
+	newItem = [ { taskTitle: "Walk dog", hours: 19, minutes: 30, day: 24, month: "December", year: 2013, notified: "no" } ];
+
+	// On ouvre une transaction de lecture / écriture
+    // pour traiter les données via la connexion
+	var transaction = db.transaction(["toDoList"], "readwrite");
+
+	// En cas de succès de l'ouverture de la transaction
+    // on utilise ce gestionnaire
+	transaction.oncomplete = function(event) {
+		note.innerHTML += '<li>Transaction terminée : modification de la base de données OK.</li>';
+	};
+	// En  cas d'échec de l'ouverture de la transaction
+    // on utilisera ce gestionnaire
+	transaction.onerror = function(event) {
+		note.innerHTML += '<li>L\'erreur: "' + transaction.error +'" s\'est produite, échec de la transaction.</li>';
+	};
+
+	// On ouvre l'accès au magasin "toDoList" de la transaction
+	var objectStore = transaction.objectStore("toDoList");
+
+	// Enfin on ajoute un enregistrement
+	var objectStoreRequest = objectStore.add(newItem[0]);
+	objectStoreRequest.onsuccess = function(event) {
+		// On signale l'ajout de l'enregistrement
+		note.innerHTML += '<li>Enregistrement ajouté.</li>';
+	};
+ };
+ 
+ +

Note : Pour un exemple de travail complet, voir l'application To-do Notifications (exemple live disponible ici).

+ +

Spécifications

+ + + + + + + + + + + + + + +
SpécificationÉtatCommentaires
{{SpecName('IndexedDB', '#widl-IDBTransaction-ononerror', 'onerror')}}{{Spec2('IndexedDB')}} 
+ +

Compatibilité avec les navigateurs

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FonctionnalitéChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Support simple23{{property_prefix("webkit")}}
+ 24
10 {{property_prefix("moz")}}
+ {{CompatGeckoDesktop("16.0")}}
10, en partie157.1
Disponible via les web workers{{CompatVersionUnknown}}{{CompatGeckoMobile("37.0")}}{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FonctionnalitéAndroidFirefox Mobile (Gecko)Firefox OSIE PhoneOpera MobileSafari Mobile
Support simple4.4{{CompatGeckoMobile("22.0")}}1.0.110228
Disponible via les web workers{{CompatVersionUnknown}}{{CompatGeckoMobile("37.0")}}{{CompatVersionUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatUnknown}}
+
+ +

Voir aussi

+ + -- cgit v1.2.3-54-g00ecf