не работает маршрутизация этого пути.props.history.push

#reactjs

#reactjs

Вопрос:

Моя текущая ссылкаhttp://localhost:3000/show /.На этой странице я использую компонент видеопроигрывателя, и после воспроизведения ссылка на видео будет генерироваться какhttp://localhost:3000/video.Но мой ожидаемый результатhttp://localhost:3000/show/video. Я использую

    this.props.history.push({
     pathname: this.props.match.url/video,
  });
  

и в файле маршрута я использую <Путь маршрута ={ ${this.props.match.path}/Video } component ={Video} />
но не маршрутизация видеокомпонента. Мой ожидаемый результат будетhttp://localhost:3000/show/video

Ответ №1:

Попробуйте вместо этого использовать строковые шаблоны для формирования допустимой строки пути:

 this.props.history.push({
  pathname: `${this.props.match.url}/video`,
});
  

Комментарии:

1. я использую то же самое, что и pathname: ${this.props.match.url}/video но не маршрутизирую видеокомпоненты.

2. @bdevloper Я не совсем понимаю этот комментарий, неясно, что вы говорите.

3. я нахожусь на странице < localhost: 3000 / показать > и хочу перейти к видеокомпоненту. Я выполняю навигацию по видеокомпоненту, но мой генерирующий URL-адрес < localhost: 3000 / video> . Я хочу перемещаться по этому URL < localhost: 3000 /show / video > .

4. @bdevloper Является /video вложенным маршрутом в /show ? Проверьте эту демонстрацию

5. спасибо за ответ, сэр. Я реализую это и свяжусь с вами, сэр.