Cet article nécessite une relecture technique. Voici comment vous pouvez aider.
Cet article nécessite une relecture rédactionnelle. Voici comment vous pouvez aider.
La propriété source
de l'interface IDBRequest
renvoie la source de la requête, tel qu'un index
, un magasin d'ojets
ou null
s'il n'y à pas de source (lors de l'appel indexedDB.open
par exemple).
Syntaxe
var mySource = request.source;
Valeur
Un objet représentant la source de la requête, tel qu'un index
, magasin d'objets
ou curseur
.
Example
L'exemple suivant demande un titre d'enregistrement donné, onsuccess
obtient l'enregistrement associé du 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. La source de la deuxième requête est affichée sur la console du développeur. En bas est une fonction onerror
qui affiche le code d'erreur si la requête échoue. Pour un exemple de travail complet, voir notre
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); //affiche la source de cette requête console.log("La source de cette requête est " + updateTitlerequest.source); // 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
Spécification | Statut | Commentaire |
---|---|---|
Indexed Database API La définition de 'source' dans cette spécification. |
Recommendation |
Compatibilité avec les navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Support basique | 23webkit 24 |
10 moz 16.0 (16.0) |
10, en partie | 15 | 7.1 |
Disponible dans workers | (Oui) | 37.0 (37.0) | ? | (Oui) | ? |
Fonctionnalité | Android | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support basique | 4.4 | 22.0 (22.0) | 1.0.1 | 10 | 22 | 8 |
Disponible dans workers | (Oui) | 37.0 (37.0) | (Oui) | ? | (Oui) | ? |
Voir aussi
- Using IndexedDB
- 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.)