Я хочу пройти через файловую систему html5 и получить какое-то уведомление после того, как все файлы пройдены.Рекурсивные обещания в Angular JS
Im использованием filer, который является оболочкой для библиотеки HTML файловой системы
для того, чтобы начать рекурсивной файловой системы ходок им с помощью этого:
filerService.ls(filerService.fs.root, function(entries){
for(var i = 0; i < entries.length; i ++) {
traverseFileTree(entries[i]);
}
});
рекурсивная функция:
function traverseFileTree(item) {
if(item.isFile) {
console.log("item is file: " + item.name);
//do something with file here
} else if (item.isDirectory) {
console.log("item is directory: " + item.name);
filerService.ls(item, function(entries) {
for(var i = 0; i < entries.length; i ++) {
traverseFileTree(entries[i]);
}
});
}
};
Теперь я хотел бы сделать следующее:
var promise = walkFileTree() //this method should start the recursive methods and return a promise
promise.then(function(){
//notify user that the filewalker has completed
})
У кого-нибудь есть указатели на то, как это можно достичь?
Да, отлично, спасибо, это помогает мне вставить вещи в перспективу. – BuildingJarl
К сожалению, он не работает должным образом. Кажется, я склоняюсь к обещаниям решить, как только все файлы пройдены. – BuildingJarl
Мы могли бы выработать детали, если бы вы могли предоставить скрипку/plunk ... –