IndexedDB 无法在'IDBDatabase'上执行'transaction' [已关闭]

jjjwad0x  于 2022-12-09  发布在  IndexedDB
关注(0)|答案(1)|浏览(245)

**已关闭。**此问题为not reproducible or was caused by typos。目前不接受答案。

这个问题是由一个打字错误或一个无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
去年关闭了。
Improve this question
我在一个登录/注册系统中工作,我必须取一些输入的值来注册它们,但是我遇到了一个问题。
错误为:未捕获的DOM异常:无法在'IDBDatabase'上执行'transaction':找不到其中一个指定的对象存放区。
并在此代码行中发生:“var数据=活动事务([“通常”],“读写”);“
有人能帮我吗?下面是我的代码:

var indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
var dataBase = null;

function startDB(){

  dataBase = indexedDB.open("objectDb", 1);

  dataBase.onupgradeneeded = function (e) {

    var active = dataBase.result;

    var objectDb = active.createObjectStore("usuarios", {keyPath: 'id', autoIncrement : true });

    objectDb.createIndex('index_nombre','nombre', {unique : false});
    objectDb.createIndex('index_user','usuario', {unique : true});
    objectDb.createIndex('index_correo','email', {unique : true});
    objectDb.createIndex('index_pass','pass', {unique : false});
  };

  dataBase.onsuccess = function (e) {
    alert("Base de datos cargada correctamente");

  };

  dataBase.onerror = function (e) {
    alert("Error cargando la base de datos");
  };
}

function add() {
  var active = dataBase.result;

  var data = active.transaction(["usuarios"], "readwrite");

  var objectDb = data.objectStore("usuarios");

  var request = objectDb.put({
    nombre: document.querySelector("#nombre").value,
    usuario: document.querySelector("#usuario").value,
    email: document.querySelector("#email").value,
    pass: documento.querySelector("#pass").value,
  });

  request.onerror = function (e) {
    alert(request.error.name + '\n\n' + request.error.message);
  };

  data.oncomplete = function (e) {
    document.querySelector("#nombre").value = "";
    document.querySelector("#usuario").value = "";
    document.querySelector("#email").value = "";
    document.querySelector("#pass").value = "";
    alert("Objeto agregado correctamente");
  };
}

这是我的第一个indexedDB项目,所以我很noob。

yzckvree

yzckvree1#

我找到了答案,这是var objectDb中的一个错误,我把D放在小写字母中,它工作了。

相关问题