не записывает или не получает данные - PullRequest
0 голосов
/ 08 октября 2019

По какой-то причине я не могу получить и / или разместить какие-либо данные, используя метод IndexedDB ... Код неправильный или я что-то упустил?

Я уже разместил несколько console.log и у меня естьуже добавили или попытались добавить новые значения, но говорят, что они добавили их (или, по крайней мере, всплывающее сообщение об успешном сообщении, но ничего не появляется в журнале консоли с результатом ...

let newDataLine = [{ name: name.value}];

let transaction = db.transaction( ["permit"], "readwrite");

transaction.oncomplete = function() {
statusText.textContent = 'Something was just added';
console.log('-------transaction.oncomplete----------')
console.log(objectStore);

// update the display of data to show the newly added item, by running displayData() again.
displayData();
};

transaction.onerror = function() {
status.textContent = 'Error reading/writing data from/into db error ' + transaction.error;
}

// call an object store that's already been added to the database
let objectStore = transaction.objectStore("permit");

let objectStoreRequest = objectStore.add(newDataLine[0]);

objectStoreRequest.onsuccess = function(event) {
statusText.textContent = 'New permit was just added';
console.log('-------objectStoreRequest.onsuccess----------')
console.log(objectStore);
}

полный код в https://jsfiddle.net/m7nx9a3v/

Идея состояла в том, чтобы разместить, извлечь и заполнить данные в таблицу ... Заранее спасибо

1 Ответ

1 голос
/ 08 октября 2019
function displayData() {
      let objectStore = db.transaction('permit').objectStore('permit');

      objectStore.openCursor().onsuccess = function(event) {
        var cursor = event.target.result;
        if (cursor) {
            dataLine.innerHTML+= '<tr><td>'+cursor.value.name+'</td><td class="buttons"></td></tr>';
          console.log(
            'Name for key ' + cursor.key + ' is ' + cursor.value.name
          );
          cursor.continue();
        } else {
          console.log('No more entries!');
        }
      };
    }

См. https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API/Using_IndexedDB

...