Люди добрые, помогите. Третий день ломаю голову.
На клиенте есть БД IndexedDb.
При попытке чтения построчно с помощью cursor, console.log выдает объекты, которые хранятся в соответствующих полях БД. Но эти объекты не получается налету записать в массив. На выходе получаю весь набор объектов в массиве, но массив их не видит (array.length = 0);
testMethod() {
let temp = [];
const db = indexedDB.open("EPG");
db.onsuccess = (event) => {
let target = event.target.result;
let tx = target.transaction(["channel"]).objectStore("channel").openCursor();
tx.onsuccess = (event) => {
let cursor = event.target.result;
if(cursor){
temp.push(cursor.value);
cursor.continue();
}
}
}
return temp;
}
В массиве temp на выходе получаю весь нужный список объектов, но массив как будто пустой, ни foreach ни перебор по индексам не работают.
Заранее благодарен за помощь, и просьба сильно не чмырить)