У меня есть страница с параметрами. Этот компонент состоит из строки. Каждая строка является настройкой. Этот параметр - это выбор, проверка, радио или пользовательский элемент. Этот компонент обновляется двумя способами:Уровень компонента onChange?
- AJAX рассказывает обновить с SetState - это SetState классифицировать не как компонент OnChange, но только обновление компонентов
- Пользователь манипулирует строку, вызывая выбор/радио/проверить OnChange для запуска, то OnChange запускает SetState на самый верхний компонент - это SetState классифицировать как компонент OnChange
Когда # 2 происходит, то есть манипулируют пользовательский компонент, я хочу OnChange на самый верхний компонент к выстрелу. Есть ли такое событие? Я не могу найти его в жизненном цикле компонентов.
Причина, по которой я не могу использовать componentDidUpdate
, заключается в том, что когда пользователь запускает изменение строки, мне нужно сделать запрос на сервер с новой информацией. Если AJAX сообщает компоненту обновить, onComponentDidUpdate будет запускаться, но мне не нужно делать запрос AJAX.
donn't знать, что именно вы хотите. Не можете ли передать 'onChange' из родительского компонента в строки с реквизитами, чтобы решить ваши проблемы? Что означает 'onChange на верхней части большинства компонентов для пожара', пожалуйста? вы имеете в виду делегацию событий? –
Спасибо @ZhangChao за быстрый ответ. В принципе, я хочу знать, если 'componentDidUpdate', который запускается на самом верхнем большинстве компонентов, вызван использованием пользователем setState или AJAX setState. – Noitidart
Когда пользовательские манипуляции вызывают 'onChange', вы хотите вызвать' setState', а затем сделать запрос в 'componentDidUpdate', правильно? Почему вы не делаете этот запрос в 'onChange' и запускаете' setState', когда получаете ответ на этот запрос? Я думаю, что это более распространенный способ делать такие вещи, и вам не нужно делать различия между ajax-способом и пользовательским способом в 'componentDidUpdate'. –