Я новичок в реакции и пытаюсь понять, как передавать реквизит.
1-й, я установил компонент Navlink, который содержит свойство подкатегорий:
<NavLink
catid={category.id}
to={category.route}
catname={category.name}
subcategories={category.subcategories}
>
{category.name}
</NavLink>
{category.route}
, {category.name}
, {category.subcategories}
выбираются из файла json, поэтому с этой частью все в порядке.
Каждый маршрут определен так:
<Route
path='/epicerie-sucree'
render={(props) => (
<CategoryPage
{...props}
catid={10}
catname={"Epicerie sucrée"}
subcategories={props.subcategories}
/>
)}
/>
, поэтому он отображает компонент с именем <CategoryPage/>
А вот код компонента CategoryPage:
export default function CategoryPage(props) {
return (
<div>
{ props.subcategories.map(subcat => (
<div>{subcat.subcat_name}</div>
))}
<FooterCat cat={catData.categories}></FooterCat>
</div>)
}
Таким образом, компонент categoryPage должен правильно получать реквизиты, передаваемые через маршрутизатор, нет?
Вместо этого выдает ошибку «Ошибка типа: невозможно прочитать свойство« карта »из неопределенного» Я не понимаю ... Спасибо