我正在制作边缘网络扩展游戏,我已经完成了游戏,所以现在我必须进行存储。 我将使用 IndexedDB,因为 webSQL 很快将不再可用。 我做了一个保存功能,但是我得到了一个错误。
这是每2秒调用一次保存函数的函数:
function init() {
const data = {
money: money,
monkey: monkey
};
setInterval(function() {
saveGameData("myDatabase", "store", data); }, 2000);
}
这是保存功能:
function saveGameData(databaseName, storeName, data) {
// Open the database
const request = indexedDB.open(databaseName, 1);
request.onerror = function() {
console.error("Database error:", request.error);
};
request.onsuccess = function() {
const db = request.result;
// Start a transaction and get the object store
const transaction = db.transaction(storeName, "readwrite");
const objectStore = transaction.objectStore(storeName);
// Save the data to the object store
const saveRequest = objectStore.put(data);
saveRequest.onerror = function() {
console.error("Error saving data:", saveRequest.error);
};
saveRequest.onsuccess = function() {
console.log("Data saved successfully");
};
};
}
这是我得到的错误:
未捕获的 NotFoundError:无法在“IDBDatabase”上执行“事务”:找不到指定的对象存储之一。
错误来自这一行:
const transaction = db.transaction(storeName, "readwrite");