match
Учитывая, что маршрут маршрута комментариев определен как path="/comments/:commentId"
, доступ к идентификатору можно получить из match
prop.
this.props.match.params.commentId
location
Если вам нужно отправить состояние с маршрутом pu sh, оно отправляется в опоре to
ссылки как объект, определяющий pathname
и state
для отправки новый маршрут.
to={{ pathname: `/comments/${storyID}`, state: { data } }}
Доступ из location
проп.
this.props.location.state.data
data может быть любым допустимым в качестве полезной нагрузки объекта
edit
Предполагается, что Comments
отображается так:
<Route path="/comments/:id" component={Comments} />
Затем распакуйте id
из полученной match
реквизита:
import React, { useState, useEffect } from 'react';
import { getStoryTitle } from '../API.js';
export default function Comments({ match }) {
const { id } = match.params;
const [comment, setComment] = useState({});
useEffect(()=> {
getStoryTitle(id).then(data => setComment(data));
}, []);
return (
<ul>
<li>{id}</li>
</ul>
);
}