Программно создавая цепочку последовательности обещаний jQuery
У меня есть функция, чтобы удалить список массив файлов, filePaths, вызывая один deleteFile (filePath) для каждого из файлов в списке (некоторые APIS I 'Я использую нет поддерживает массовое удаление). Функция deleteFile возвращает обещание jQuery и разрешает / отклоняет после удаления файла.
function deleteFiles(filePaths)
var deferreds = $.map(fileKeys, function (val, index) {
return deleteFile(filePath);
});
$.when.apply($, deferreds).then(function (schemas) {
console.log("DONE", this, schemas);
deferred.resolve();
}, function (error) {
console.log("My ajax failed");
deferred.reject(error);
});
Я получаю вызовы .reject для некоторых файлов в списке (и я знаю, что они существуют), поэтому яя думаю, мне может понадобиться превратить массив filePaths в цепочку вызовов, как очередь (б / с это нет, что делает $. когда? кажется, чтобы запустить их всех сразу). Я знаю, как это сделать (например .deleteFile (path1) .deletePath (path2) и т. Д., Когда они находятся в массиве, как это.
Любая помощь ценится заранее.