Czekam na obietnicę w pętli for
Mam trochę kłopotów z dostaniem się do całej tej asynchronicznej rzeczy. Używam pliku pdf.js, aby odczytać zawartość pliku pdf. Wszystko działa, ale kolejność egzekucji sprawia mi kłopoty. To jest kod, który mam:
function getText(data) {
var contents = [];
PDFJS.getDocument(data).then(function(pdf) {
var numPages = pdf.pdfInfo.numPages;
for (var i = 1; i <= numPages; i++) {
pdf.getPage(i).then(function(page) {
page.getTextContent().then(function(content) {
contents.concat(content.bidiTexts);
})
});
}
})
}
To działa zgodnie z przeznaczeniem, ale chciałbym je przekazaćcontents
kiedy wszystkie strony są przetwarzane, a ich bidiTexts są powiązane z treścią. Jeśli po prostu ustawię wywołanie funkcji za pomocącontents
jako argument przed ostatnim zamknięciem}
potem zostaje wywołany na początku.