IDBCursor: source Eigenschaft
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die schreibgeschützte Eigenschaft source
der IDBCursor
-Schnittstelle gibt den IDBObjectStore
oder IDBIndex
zurück, über den der Cursor iteriert. Diese Funktion gibt niemals null zurück und löst auch keine Ausnahme aus, selbst wenn der Cursor derzeit iteriert, sein Ende überschritten hat oder seine Transaktion nicht aktiv ist.
Wert
Der IDBObjectStore
oder IDBIndex
, über den der Cursor iteriert.
Beispiele
In diesem einfachen Beispiel erstellen wir eine Transaktion, rufen einen Objekt-Store ab und verwenden dann einen Cursor, um alle Datensätze im Objekt-Store zu durchlaufen. Bei jeder Iteration protokollieren wir die Quelle des Cursors, die unser IDBObjectStore
-Objekt in der Konsole protokolliert.
Der Cursor erfordert nicht, dass wir die Daten basierend auf einem Schlüssel auswählen; wir können einfach alle erfassen. Beachten Sie auch, dass Sie in jeder Iteration der Schleife Daten aus dem aktuellen Datensatz unter dem Cursor-Objekt mit cursor.value.foo
erfassen können. Für ein vollständiges funktionierendes Beispiel siehe unser IDBCursor-Beispiel (Beispiel live ansehen).
function displayData() {
const transaction = db.transaction(["rushAlbumList"], "readonly");
const objectStore = transaction.objectStore("rushAlbumList");
objectStore.openCursor().onsuccess = (event) => {
const cursor = event.target.result;
if (cursor) {
const listItem = document.createElement("li");
listItem.textContent = `${cursor.value.albumTitle}, ${cursor.value.year}`;
list.appendChild(listItem);
console.log(cursor.source);
cursor.continue();
} else {
console.log("Entries all displayed.");
}
};
}
Spezifikationen
Specification |
---|
Indexed Database API 3.0 # ref-for-dom-idbcursor-source① |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Verwenden von IndexedDB
- Starten von Transaktionen:
IDBDatabase
- Verwenden von Transaktionen:
IDBTransaction
- Festlegen eines Schlüsselspektrums:
IDBKeyRange
- Abrufen und Ändern Ihrer Daten:
IDBObjectStore
- Verwenden von Cursors:
IDBCursor
- Referenzbeispiel: To-do-Benachrichtigungen (Beispiel live ansehen).