IDBOpenDBRequest: upgradeneeded Ereignis
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
Das upgradeneeded Ereignis wird ausgelöst, wenn versucht wurde, eine Datenbank mit einer höheren Versionsnummer als der aktuellen Version zu öffnen.
Dieses Ereignis kann nicht abgebrochen werden und ist nicht durchsickerbar.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener() oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("upgradeneeded", (event) => { })
onupgradeneeded = (event) => { }
Ereignistyp
Ein IDBVersionChangeEvent. Erbt von Event.
Ereigniseigenschaften
Erbt auch Eigenschaften von seinem Elternteil, der Event-Schnittstelle.
IDBVersionChangeEvent.oldVersionSchreibgeschützt-
Gibt die alte Version der Datenbank zurück.
IDBVersionChangeEvent.newVersionSchreibgeschützt-
Gibt die neue Version der Datenbank zurück.
Beispiele
Dieses Beispiel öffnet eine Datenbank und behandelt das upgradeneeded Ereignis, indem es alle notwendigen Aktualisierungen im Objekt-Store vornimmt.
// Open the database
const dBOpenRequest = window.indexedDB.open("toDoList", 4);
dBOpenRequest.addEventListener("upgradeneeded", (event) => {
const db = event.target.result;
console.log(`Upgrading to version ${db.version}`);
// Create an objectStore for this database
const objectStore = db.createObjectStore("toDoList", {
keyPath: "taskTitle",
});
// define what data items the objectStore will contain
objectStore.createIndex("hours", "hours", { unique: false });
objectStore.createIndex("minutes", "minutes", { unique: false });
objectStore.createIndex("day", "day", { unique: false });
objectStore.createIndex("month", "month", { unique: false });
objectStore.createIndex("year", "year", { unique: false });
});
Dies ist dasselbe Beispiel, verwendet jedoch die onupgradeneeded Ereignis-Handler-Eigenschaft.
// Open the database
const dBOpenRequest = window.indexedDB.open("toDoList", 4);
dBOpenRequest.onupgradeneeded = (event) => {
const db = event.target.result;
console.log(`Upgrading to version ${db.version}`);
// Create an objectStore for this database
const objectStore = db.createObjectStore("toDoList", {
keyPath: "taskTitle",
});
// define what data items the objectStore will contain
objectStore.createIndex("hours", "hours", { unique: false });
objectStore.createIndex("minutes", "minutes", { unique: false });
objectStore.createIndex("day", "day", { unique: false });
objectStore.createIndex("month", "month", { unique: false });
objectStore.createIndex("year", "year", { unique: false });
};
Spezifikationen
| Specification |
|---|
| Indexed Database API 3.0> # eventdef-idbopendbrequest-upgradeneeded> |
Browser-Kompatibilität
Loading…