@denis-heise

Как правильно прописать свойство reduce?

Доброго времени суток.
Только начал изучать React и TS.
Создал компонент для отрисовки карточек и через пропс передаю данные (массив с объектами). Когда пытаюсь применить к данным из пропса reduce выдаёт ошибку "Свойство "reduce" не существует в типе "CardsProps ".ts(2339)".
Как мне правильно прописать тип в данном случае, подскажите пожалуйста?

type Offer = {
  id: number;
  price: number;
  city: {
    name: string
  };
  rating: number;
};
type CardsProps = {
  cardsFavorites: Offer[];
};

function Favorites(cardsFavorites: CardsProps ): JSX.Element{
  const groupedCards = cardsFavorites.reduce<{ [key: string ]: Offer[] }>((acc, curr) => {
      const city = curr.city.name;
      if (!(city in acc)) {
        acc[city] = [];
      }
      acc[city].push(curr);
      return acc;
  }, {});

  return(
   <main>
     <div>other code</div>
   </main>
  );
}
  • Вопрос задан
  • 68 просмотров
Решения вопроса 1
- function Favorites(cardsFavorites: CardsProps): JSX.Element {
+ function Favorites({ cardsFavorites }: CardsProps): JSX.Element {
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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