Задать вопрос
@JordanBelford

Почему у объекта поле data undefined?

Добрый день! Я отправляю сетевой запрос на route, и мне приходит два объекта room и service, мне необходимо для каждого из данных объектов вызвать соответствующую функцию.
Реализовал вот так:
useEffect(() => {
        axios.get('/main')
            .then(res => res.data.room.forEach(item => {
                props.addRoom(item._id, item.number, item.storey, item.sort, item.cost, item.state);
            }))
            .then(res => res.data.service.forEach(item => {
                props.addNewService(item._id, item.number, item.sort, item.date, item.state);
            }));
    }, []);

Но проблема в том, что react ругается на второй promise. В чем может быть проблема? С первым все отлично, все работает как надо.
Код route может быть пригодиться:
router.get('/main', async (req, res, next) => {
    try {
        const room = await Room.find({});
        const service = await Service.find({});
        res.send({room, service})
    } catch (e) {
        console.error(e.message);
    }
});

Ошибка:
6090b5464b956419201131.png
  • Вопрос задан
  • 187 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега React
В then приходит результат, который возвращает предыдущий then. Метод forEach возвращает undefined.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽
IT ATLAS Москва
от 200 000 до 250 000 ₽