Просто се опитвате да напишете метод „selectAll“, който приема името на objectStore като параметър и връща ВСИЧКИ съдържащи се двойки ключ/стойност, вместо просто да изпълнява обратно извикване при всяка итерация на хранилището на обекти.
По същество, имитиране на синхронно поведение при извършване на транзакция с индексирана DB.
var results = []
request.onsuccess = function(e) {
var result = e.target.result;
if (!result) {
//I could call successcallback here with JUST this 'row' of data
successCallback(result);
return;
}
//I could push the results into an array here, but I would need to 'wait' until all the onSuccess methods have fired before returning it.
results.push(result.value);
result.continue();
}
Използвам Angular, мисля, че обещанията могат да бъдат отговорът. По-специално, може ли $q.all() да бъде полезен в този случай?