Реагировать componentDidUpdate не вызывается при необходимости - PullRequest
0 голосов
/ 12 апреля 2019

У меня есть родитель, который будет отправлять запрос на новые данные при смене реквизита.

У меня есть компонент выбора диапазона времени (дочерний), который по умолчанию использует последние 8 недель данных, полученных из состояния избыточностизавернутый в это.Он вызовет диспетчеризацию в состоянии timeRange.

Затем родитель должен обнаружить, что реквизит timeRange, который тоже обернут на себя, изменился, и выполнить запрос.(Я надеялся).

class Parent extends component {

  componentDidUpdate(prevProps) {
    const { timeRange } = this.props;
    if (timeRange !== prevProps.timeRange) {
      getData()
    }
  }

  render() {
    console.log(this.props.timeRange)
    // Logs the timeRange set by Child even though
    // INITIAL_STATE should have been applied to the Parent.

    return (<Child />)
  }
}


    class Child extends Component {


  componentDidMount() {

    const { availableDates } = this.props;
    /*
      logic to set dateRange on availableDates
     */
    setDateRange(newRange)

  }
}

Обратите внимание, что availableDates извлекается компонентом более высокого порядка задолго до монтирования Parent.

Любые советы о том, как улучшить мой процесс, высоко ценятся.

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