ich den Code unten schrieb dann erkannte er früh wurde die Lösung (Anmeldung vor allen Versprechungen resolve):JS Promises: Gibt es eine gute Möglichkeit, mehrere Versprechen als Objekteigenschaften zu lösen?
readDirPromise
.then(categoriseFiles)
.then(({movies, series}) => ({
movies: Promise.all(movies.map(movieTasks)),
series: Promise.all(series.map(seriesTasks))
}))
.then((res) => {
console.log(' done!', res)
})
Ich habe es geschafft, es neu zu schreiben, in der richtigen Reihenfolge zu beheben:
readDirPromise
.then(categoriseFiles)
.then((cats) => Promise.all(cats.movies.map(movieTasks)).then((movies) => {
cats.movies = movies
return cats
}))
.then((cats) => Promise.all(cats.series.map(seriesTasks)).then((series) => {
cats.series = series
return cats
}))
.then((res) => {
console.log(' done!', res)
})
aber Ich kann nicht anders als zu denken ... gibt es einen besseren, erweiterbaren Weg?
@Randy guter Punkt, aktualisiert – daviestar