У меня есть некоторые данные в таблице IndexedDB, которая содержит эти данные:
Затем у меня есть эта функция для получения данных из IndexedDB ( Мне нужен массив с версиями)
function enter_base_and_get_versions() {
var returnData = [];
var defer = $.Deferred();
var name = document.getElementById('Search_Bar_Templates').value;
var transaction = db.transaction(['Formulars'], 'readwrite');
var formulars = transaction.objectStore('Formulars');
var request = formulars.openCursor();
request.onsuccess = function() {
var cursor = this.result;
if (cursor) {
if (cursor.value.name == name) {
returnData = cursor.value.versions;
defer.resolve(returnData);
return defer.promise();
}
cursor.continue();
} else {
alert("Template doesnt exists");
}
};
}
function get_versions() {
var myFormularsPromise = enter_base_and_get_versions();
var myVersions = []
$.when(myFormularsPromise).done(function(data) {
myVersions = data;
}).fail(function(data) {
console.log("fail")
});
}
Когда я пытаюсь напечатать myVersions в функции get_versions (), она печатает undefiend. Я не знаю, как сохранить этот массив в javascript переменную.