IDBKeyRange: only() statische Methode
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.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die only()
statische Methode der IDBKeyRange
Schnittstelle erstellt einen neuen Schlüsselbereich, der einen einzelnen Wert enthält.
Syntax
IDBKeyRange.only(value)
Parameter
value
-
Der Wert für den neuen Schlüsselbereich.
Rückgabewert
IDBKeyRange
: Der neu erstellte Schlüsselbereich.
Ausnahmen
DataError
DOMException
-
Wird ausgelöst, wenn der
value
-Parameter kein gültiger Schlüssel war.
Beispiele
Das folgende Beispiel veranschaulicht, wie Sie einen only-Schlüsselbereich verwenden würden. Hier deklarieren wir einen keyRangeValue = IDBKeyRange.only("A");
— einen Bereich, der nur den Wert "A" umfasst. Wir öffnen eine Transaktion (unter Verwendung von IDBTransaction
) und einen Objekt-Store, und öffnen einen Cursor mit IDBObjectStore.openCursor
, indem wir keyRangeValue
als optionalen Schlüsselbereichswert deklarieren. Das bedeutet, dass der Cursor nur den Datensatz mit dem Schlüsselwert "A" abruft.
Hinweis: Für ein vollständigeres Beispiel, das es Ihnen ermöglicht, mit dem Schlüsselbereich zu experimentieren, schauen Sie sich unser IDBKeyRange Repository an (sehen Sie sich das Beispiel auch live an.)
function displayData() {
const keyRangeValue = IDBKeyRange.only("A");
const transaction = db.transaction(["fThings"], "readonly");
const objectStore = transaction.objectStore("fThings");
objectStore.openCursor(keyRangeValue).onsuccess = (event) => {
const cursor = event.target.result;
if (cursor) {
const listItem = document.createElement("li");
listItem.textContent = `${cursor.value.fThing}, ${cursor.value.fRating}`;
list.appendChild(listItem);
cursor.continue();
} else {
console.log("Entries all displayed.");
}
};
}
Spezifikationen
Specification |
---|
Indexed Database API 3.0 # ref-for-dom-idbkeyrange-only① |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Verwendung von IndexedDB
- Transaktionen starten:
IDBDatabase
- Verwendung von Transaktionen:
IDBTransaction
- Festlegen eines Schlüsselbereichs:
IDBKeyRange
- Abrufen und Ändern Ihrer Daten:
IDBObjectStore
- Verwendung von Cursoren:
IDBCursor
- Referenzbeispiel: To-do Notifications (Beispiel live ansehen).