Компонент теряет полученные реквизиты при обновлении - PullRequest
1 голос
/ 27 марта 2019

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

Во втором компоненте у меня есть вызов API на основе реквизита, полученного от предыдущего компонента, который вызывается после монтирования компонента.

async getItem() {
    let req = await fetch(API_URL + '/items/item/' + this.props.location.itemID)
    let response = await req.json()
    // Does other things
  }

  componentDidMount() {
    this.getItem()
  }

Моя проблема в том, что если пользователь обновляет второй компонент, возникает необработанное отклонение, поскольку второй компонент не имеет представления о том, что является реквизитом itemID или откуда пользователь "обновился". Без перестройки всего этого, как мне справиться с этим?

Если это имеет значение, я использую react-router-dom и передаю реквизит через to= реквизит, вот так to={{pathname: '/item', itemID: item.id}}

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