Почему Indexed-db требует много времени для успешного выполнения в случае большого количества данных в chrome? - PullRequest
0 голосов
/ 16 июня 2020

Функция Indexeddb onsuccess занимает много времени, чтобы выполнить код внутри нее

let request = indexedDB.open(DB_NAME, 1);

request.onupgradeneeded = function (e) {
    console.log("openDb.onupgradeneeded ...");
    db = e.target.result;
    if (!db.objectStoreNames.contains(OBJECT_STORE_NAME)) {
        console.log("object store is created ...");
        db.createObjectStore(OBJECT_STORE_NAME, {keyPath: "key"});
    }
};

request.onsuccess = function (event) {
    db = event.target.result;
    console.log("openDb DONE ...");
    db.onversionchange = function(event) {
        db.close();
        console.log("A new version of this page is ready. Please reload or close this tab!");
    };
};
request.onerror = function (event) {
    console.error("Database error: " ,event.target);
    console.log(event);
    if (request.error.name == "ConstraintError") {
        console.log("study with such id already exists"); // handle the error
        event.preventDefault(); // don't abort the transaction
    } else {

        alert("Please reload the page!");
    }
};


request.onblocked = function(event) {  
  console.log("Please close all other tabs with this site open!");
};

количество записей, вставленных в db, составляет ~ 5000. и когда я обновляю sh страницу и через ~ 15 минут,

журнал консоли «openDb DONE ...» , а также я не могу предварительно просмотреть записи на вкладке indexeddb

из инструмента проверки элементов в chrome.

Есть ли какие-либо ограничения indexeddb, из-за которых возникает эта проблема?

Любая помощь приветствуется

...