IDBCursor.continue()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
La méthode continue()
de l'interface IDBCursor
fait avancer le curseur jusqu'à la prochaine position qui corrrespond à une clé donnée si celle-ci est passée en paramètre, si aucune clé n'est indiquée, le curseur avancera à la position qui suit immédiatement la position actuelle (dans la direction de progression du curseur).
Note : Cette fonctionnalité est disponible via les Web Workers.
Syntaxe
curseur.continue(cléOptionnelle);
Paramètres
cléOptionnelle
-
La clé sur laquelle se positionne le curseur.
Exceptions
Cette méthode peut déclencher des exceptions DOMException
de type :
Exception | Description |
---|---|
TransactionInactiveError |
La transaction de l'IDBCursor est inactive. |
DataError |
Le paramètre
|
InvalidStateError |
Le curseur est en itération ou il a itéré au-delà de la plage. |
Exemple
Dans ce petit morceau de code, on fait une transaction, on récupère un magasin d'objet, puis on utilise un curseur afin d'itérer sur les enregistrements contenus dans le magasin. Il n'est pas nécessaire de sélectionner les données selon une clé, on peut simplement toutes les récupérer. On notera qu'à chaque itération de la boucle, on récupère les données correspondantes à l'enregistrement grâce au curseur sous la forme curseur.value.toto
. Pour étudier un exemple de travail complet, voir notre exemple IDBCursor (voir l'exemple live).
function afficheDonnee() {
var transaction = db.transaction(["granListAlbum"], "readonly");
var objectStore = transaction.objectStore("granListAlbum");
objectStore.openCursor().onsuccess = function (event) {
var curseur = event.target.result;
if (curseur) {
var listItem = document.createElement("li");
listItem.innerHTML =
curseur.value.titreAlbum + ", " + curseur.value.annee;
list.appendChild(listItem);
curseur.continue();
} else {
console.log("Entrées toutes affichés.");
}
};
}
Spécifications
Specification |
---|
Indexed Database API 3.0 # ref-for-dom-idbcursor-continue① |
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
- Manipuler IndexedDB
- Démarrer des transactions :
IDBDatabase
- Manipuler des transactions :
IDBTransaction
- Définir un intervalle de clés :
IDBKeyRange
- Récupérer des données et les modifier :
IDBObjectStore
- Manipuler des curseurs :
IDBCursor
- Exemple de référence pour IndexedDB : To-do Notifications