Я пытаюсь перебрать группу элементов, пока они перебираются при возвращении рендера, но по какой-то причине при попытке использовать item.url, но элементы остаются с последним прочитанным путем item.url. Как сделать так, чтобы каждая итерация использовала свой собственный item.url вместо последней из массива объектов.
On line 53 of ./CategoriesListContainer.jsx
class CategoriesListContainer extends React.Component {
state = {
redirect: false,
}
setRedirect = () => {
this.setState({
redirect: true
})
}
render (){
const ItemsApp =[
{
url: '/mail',
title: 'Mailing',
description: 'Esto es una descripcion de la carta a usar para el CSV mailing.',
buttonClass: 'btn-success',
},
{
url: '#',
title: 'Excels',
description: 'Esto es una descripcion de la carta a usar para otros modulos.',
buttonClass: 'btn-success',
},
];
return(
<SectionWrapper sectionTitle='Categories'>
{ ItemsApp.map(Item => {
return (
<CardWrapper
key={ Item.title }
customClass='card'
description={ Item.description }
title={ Item.title }
>
{ this.state.redirect ? <Redirect to={ Item.url }/>: null }
<Button onButtonClick={ this.setRedirect } customClass={ Item.buttonClass } title='Entra aqui' />
</CardWrapper>
);
})}
</SectionWrapper>
);
}
};
export default CategoriesListContainer;
Я ожидаю нажать на каждую из кнопок и перейти на страницу, определенную для ее переменной URL.