В моем текущем проекте используется библиотека Q, и мне нужно собрать данные из нескольких обещаний, чтобы завершить операцию.Я пытаюсь использовать метод Q.all (), но похоже, что окончательное обещание ожидает навсегда.Пример кода:
Q.all([
getSomeData('table', 'record1'),
getSomeData('table', 'record2'),
getSomeData('table', 'record3')
]).then(processData, handleError);
Каждый getSomeData
возвращает обещание Q.Ни processData
, ни handleError
не вызывается окончательно, и если я сохраняю последнее обещание, я вижу статус "ожидающий" на нем.Если я выполню все эти обещания по отдельности, все они будут выполнены успешно.Если я запускаю Q.all
только с одним обещанием (любым из них), оно выполняется успешно.Но выполнение Q.all
с двумя или более обещаниями всегда безуспешно.Что может вызвать такую проблему?Какая дополнительная информация требуется?