Невозможно опубликовать данные от дочернего элемента к родительскому в реакции. - PullRequest
0 голосов
/ 28 мая 2018

Я работаю в одностраничном веб-приложении.На странице у меня есть раскрывающийся список, поэтому на основе значения раскрывающегося списка я буду загружать данные в сетку.Данные сетки поступают из компонента jqgrid, поэтому иногда данные сетки все еще загружаются, и пользователь меняет раскрывающийся список, чтобы предыдущий запрос к серверу не был выполнен, и пользователь нажимал новый запрос к серверу, поэтому я хочу решить эту проблему.поэтому я решил отключить раскрывающийся список до тех пор, пока данные не будут загружены полностью, поэтому я создаю переменную в состоянии со значением false (первый раз раскрывающийся список отключен), а при загрузке данных сделайте его истинным.но проблема в том, что я не могу обновить состояние родителя от потомка.

Я создал функцию с именем

handleChange(e)
{
this.setState({ isDisabled: false });
}

, и в моем состоянии я установил значение isDisabled true.т.е. по умолчанию это отключено.В дочернем компоненте jqwidget адаптер данных в обратном вызове я вызываю родительскую функцию.

let dataAdapter = new jqx.dataAdapter(currentComponent.state.source,{ formatData: function (data) { },
loadComplete: function (data) 
 {
            this.props.handler(false)
            //console.log(data);

 }.bind(this)

я не помещаю свой полный код, вы можете проверить фрагменты здесь .so как обновить родительское состояние от child.

...