@Concencuc

Как реализовать промис в котором цикл с промисами js?

вот мой код
const resUsers = [];

        await userRepository.find()
        .then((response: any) => {

            for (const user of response) {
                let userInfo = {
                    email: user.email,
                    age: user.age,
                    sex: user.sex,
                    tel: user.tel,
                    avatar: user.avatar
                };
                if (userInfo.avatar) {
                    imageToBase64(user.avatar)
                        .then((myBase64: any) => {
                            userInfo.avatar = 'data:image/jpeg;base64,' + myBase64;
                            resUsers.push(userInfo)
                        });
                } else {
                    resUsers.push(userInfo)
                }
                
            }
        }).then(() => {
            res.json(resUsers)
        })

но в resUsers пусто и res.json(resUsers) отсылает пустоту. Как правильно реализовать такую штуку?
Если поставить return imageToBase64(user.avatar)... то тогда отсылает правильно, но только первый элемент из response
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
Во-первых что это за мешанина из await и then.
А во вторых почитайте про Promise.all. Он вам и поможет. Не получится - пишите в комментарии ))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы