IDBVersionChangeEvent

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

注意:此功能在 Web Workers 中可用。

IDBVersionChangeEvent 介面是 IndexedDB API 的一部分,表示資料庫的版本已更改,這是由 onupgradeneeded 事件處理函式觸發的。

Event IDBVersionChangeEvent

建構函式

IDBVersionChangeEvent()

建立一個並返回一個新的 IDBVersionChangeEvent 物件,用於表示資料庫版本已更改。

例項屬性

也繼承自其父介面 Event 的屬性。

IDBVersionChangeEvent.oldVersion 只讀

返回資料庫的舊版本。

IDBVersionChangeEvent.newVersion 只讀

返回資料庫的新版本。

例項方法

沒有特定方法,但繼承了其父介面 Event 的方法。

示例

在以下程式碼片段中,我們發出一個開啟資料庫的請求,幷包含成功和錯誤情況的處理程式。在版本更改後(在 upgradeneeded 事件之後),success 事件將實現 IDBVersionChangeEvent 介面。完整的可執行示例,請參閱我們的 To-do Notifications 應用(線上檢視示例)。

js
const note = document.querySelector("ul");

// Let us open version 4 of our database
const DBOpenRequest = window.indexedDB.open("toDoList", 4);

// these two event handlers act on the database being opened successfully, or not
DBOpenRequest.onerror = (event) => {
  note.appendChild(document.createElement("li")).textContent =
    "Error loading database.";
};

DBOpenRequest.onsuccess = (event) => {
  note.appendChild(document.createElement("li")).textContent =
    "Database initialized.";

  // store the result of opening the database in the db variable. This is used a lot later on, for opening transactions and suchlike.
  const db = DBOpenRequest.result;
};

規範

規範
Indexed Database API 3.0
# events

瀏覽器相容性

另見