response-router-dom this.match.params.id быть неопределенным при использовании рендера - PullRequest
0 голосов
/ 20 октября 2019

В настоящее время я пытаюсь использовать Axios для получения информации об устройстве, отображаемом на странице, но, похоже, возникают проблемы с URL-адресом, откуда она получает информацию.

У меня возникла эта проблемас реакцией, где я просто хочу получить идентификатор из URL-адреса, используя $ {this.match.params.id}.

Я пробовал эту строку кода, где я добавляю реквизиты в лямбда-выражение и помещаю его какобъект. Это было одно предложение от кого-то, но не сработало.

<Route path="/arrangement/:id" render={(props) => ( <ArrangementPage
sponsors={this.state.sponsors} {props} /> )} />

App.js

<Route path="/arrangement/:id" render={() => ( <ArrangementPage sponsors={this.state.sponsors} /> )} />

ArrangementPage.js

  componentDidMount() {
    Axios.get(`/wp-json/wp/v2/arrangements/${this.props.match.params.id}`)
    .then( res => this.setState(
      {
        arrangement: res.data,
        isLoaded: true
      }
    ))
    .catch(err => console.log(err));
  }

Axios.get (/wp-json/wp/v2/arrangements/${this.props.match.params.id}) возвращает сообщение об ошибке, которое подразумевает, что this.props.match.params.id не определено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...