@Marat20
Frontend разработчик

Не работает код в примере?

Делаю приложение на Реакте, при переборе массива методом map, внутри него я еще перебираю объект с помощью цикла for, и внутри еще условия. Но почему-то ругается на то, что в фигурных скобках цикл for или условия if или switch. Хотя эта конструкция работает вне этого компонента.

<TableBody>
          {cars.map((car, index) => (
            <TableRow key={index}>
              <TableCell>{`${car.mark} ${car.model}`}</TableCell>
              {
                  for (let key in car.tariffs) {
                    switch (key) {
                      case 'Стандарт':‹
                        return <TableCell>{key.year}</TableCell>;
                      case 'Комфорт':
                        return <TableCell>{key.year}</TableCell>;
                      case 'Бизнес':
                        return <TableCell>{key.year}</TableCell>;
                      case 'Комфорт+':
                        return <TableCell>{key.year}</TableCell>;
                      case 'Эконом':
                        return <TableCell>{key.year}</TableCell>;
                      case 'Минивэн':
                        return <TableCell>{key.year}</TableCell>;
                      case 'Лайт':
                        return <TableCell>{key.year}</TableCell>;
                      default:
                        return <TableCell>-</TableCell>;
                    }
                  }
              }
            </TableRow>
  • Вопрос задан
  • 63 просмотра
Решения вопроса 1
aagzip
@aagzip
Вам необходимо данный цикл вынести из jsx и в jsx вызывать функцию, которая возвращает результат данного цикла.

Либо переписать данный цикл с использованием map или другого перебирающего метода
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы