in diesem Repository finden Sie das Beispiel auis der Vorlesung.
Schreiben Sie das Beispiel so um, dass der Aufruf für listDir wie folgt erfolgen kann:
listDir(path, callback)
listDir ruft die callback-Funktion auf, sobald der Verzeichnisbaum vollständig durchlaufen wurde. Der Aufruf sieht so aus:
callback(err, duplicates)
err enthält eine Fehlermeldung, wenn listDir nicht erfolgreich war. duplicates ist ein Array von Arrays. Die enthaltenen Arrays enthalten jeweils die gefundenen mehrfachen Dateien
[ ['./a.txt', './js/b.txt'], ['./c.html', './html/d.html', './js/html/e.html' ]]
Hier sind a.txt und b.txt gleich und die drei HTML-Dateien sind gleich.
Schreiben Sie listDir so um, dass ein Promise-Objekt zurückgeliefert wird. Dieses kann folgendermassen verwendet werden:
listDir(path).then(
duplicates => { /* duplicates enthält die mehrfachen Dateien */ }
err => { /* err enthält eine Fehlermeldung */ }
)
Die Datei readdirPromise.js zeigt, wie readdir als Promise arbeiten kann.