Я использую Jimp для управления некоторыми фотографиями.
У меня есть массив с фотографиями. Вот так:
var images = ['.../pic-1.jpg', '.../pic-2.jpg', '.../pic-3.jpg', '.../pic-4.jpg'];
И это код для их управления:
images.forEach(function(image){
jimp.read(image, function(err, img){
img.quality(90, function(){
console.log("done with this image!");
});
});
});
Это хорошо работает, когда записывается каждое изображение. Однако он блокирует код, и если я попробую это:
var processed = 0;
images.forEach(function(image){
jimp.read(image, function(err, img){
img.quality(90, function(){
processed++;
document.querySelector('p').textContent = 'processed images: ' + processed;
});
});
});
он не обновляет текст до тех пор, пока все изображения не будут обработаны. Как я могу это сделать, чтобы обновлять текст каждый раз, когда изображение обрабатывается?