次のコードは最後のハンドラでPromise {[[PromiseStatus]]: "pending", [[PromiseValue]]: undefined}
に解決されます。Promise.all()メソッドが値に解決されない
コンソールに約束してアレイを記録すると、それぞれがresolved
のステータスを持ち、すべての要求が満たされます。
MusicService
.getArtists()
.then((res) => {
let arr = res.filter((a) => {
return a.id.length;
});
return Promise.all(arr.map(function(a) {
return fetch(`//service.com/api/artist/${a.id}`);
}));
})
.then((res) => {
console.log(res);
});
これを行うには何が欠けていますか?これはに減少させることができる
これらの ''のいずれかでコールバックが失敗した場合はどうなりますか?または「キャッチ」? – Neal
@NielsSteenbeekこれは約束が働く方法です。あなたは約束を返すことができ、それは約束のチェーンに繋がれます。 – Neal
"次のコードは、[Promise {[PromiseStatus]]:"保留 "、[[PromiseValue]]:未定義}'を最後のハンドラで解決します。ええ、あなたは何を期待しましたか? –