function anyPromise(value: string) {
return Promise((resolve) => resolve(value));
}
const list = ['TYPE1', 'TYPE2', 'TYPE3'];
✗ 最初に考えた
const promiseList = list.map(async (_) => {
await anyPromise(_);
});
返却の中身が Promise の配列だったので、ああダメだと。。。
✗ リトライ!Promise.all ってあったなぁ
const promiseList = Promise.all(list.map(async (_) => {
await anyPromise(_);
});
返却値がなんかおかしい。。。
OK パターン
const promiseList = Promise.all(list.map(async (_) => {
return await anyPromise(_);
});
// or
const promiseList = Promise.all(list.map(async (_) => await anyPromise(_));
リターンされてないことが原因でした。 async 中の return って await の値の Promise になるんじゃなかったっけ? 違う覚え方してたかな。。。
とりあえず map で複数の Promise を取得できました