Как сделать отображение элемента при перезагрузке страницы?

Вопрос по React routing,
Мне нужно, чтобы при перезагрузке страницы по адресу, допустим:
localhost:3000/more_id1
Отображалась та же информация, что и если я перейду по специальной ссылке для перехода на ту же страницу. Проблема в том, что я по нажатию на кнопку 'подробнее' передаю id отображаемого элемента в компонент и перенаправляю туда юзера. Как сделать так, чтобы если дать человеку ссылку (localhost:3000/more_id1) он мог просто по ней перейти и увидеть отображаемый объект?
  • Вопрос задан
  • 142 просмотра
Решения вопроса 1
rockon404
@rockon404 Куратор тега React
Frontend Developer
Я вам писал в прошлом вопросе как это сделать.
Измените свой роут:
<Route path="/more/:id" component={More}/>

измените ссылку:
<Link to={`more/${this.props.itemId}`} className="descr">подробнее</Link>


измените компонент:
export default function More(props){
    const { id } = props.match.params;
    const item =props.items[id];
    const { id, title, descr, img, price } = item;
    
    return(
        <div className="more__info">
           ...
        </div>
    );
}


А ссылка для перехода будет не такая:
localhost:3000/more_id1
а, при id = 1 такая:
localhost:3000/more/1
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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