Задать вопрос
Ответы пользователя по тегу JavaScript
  • Как составить цепочку из промисов и Promise.all?

    @ravshan01 Автор вопроса
    Решил проблему разделив логику загрузки и добавления изображений

    loadImages(){
    
    		let promises = [];
    
    
    		this._imagesUrl.forEach( elem => {
    			let obj = {};
    
    
    			for (let prop in elem) {
    				let promise = new Promise( resolve => {
    
    					let image = new Image();
    					image.classList.add('plane-image');
    					image.setAttribute('src', elem[prop]);
    
    					obj[prop] = image;
    					image.onload = () => resolve(image); 
    
    				})
    
    				promises.push(promise);
    			}
    
    			
    			this._images.push(obj);
    		})
    
    
    
    		Promise.all(promises)
    		.then ( () => this._imagesLoaded = true )
    		.catch( () => this.loadImages() );
    	}
    Ответ написан
    Комментировать