Я думаю, что ваш код в порядке - за исключением того, что сказано в комментариях, возможно, вы не должны ловить ошибку в promises.push
, а просто сделать это в Promise.all
.
Я запустил приложение из вашего zip-файла, оно сработало и правильно загрузило 2 файла.
Но затем я попытался изменить какой-то URL-адрес и поставить тот, который не существует: вот проблема В этом случае функция download
не разрешает обещание (что является нормальным) и не отклоняет его (что следует).
Попробуйте сами запустить этот простой код:
download(mainWindow, 'https://nothing.wrong-url.org', {
directory: os.tmpdir() // Default is User's downloads directory
}).then(function (dl) {
console.log(dl.getSavePath());
}).catch(console.error)
Обещание просто висит здесь и не разрешает и не отвергает. Вы можете открыть вопрос об электронном DL Github.