Использование useEffect для выборки данных несколько раз

Я просто новичок в React Hooks и играю с ним.

Просто интересно, есть ли какие-либо решения, которые я мог бы использовать useEffect для получения данных несколько раз после componentDidMount.

Обычно мы используем useEffect для получения данных на основе некоторых изменений свойств путем их передачи.

useEffect(()=> {
fetchApisomefunction()=>{}
},
[]); // normally do this for componentDidMount

Как я могу получить данные снова после этого?


ОБНОВИТЬ

функция обратного вызова может решить эту проблему.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
2
0
762
1

Ответы 1

Предполагая, что вы не используете Redux или Context API,

поэтому компоненты A и B не общаются друг с другом напрямую.

С другой стороны, будет родительский компонент, который объединяет эти два компонента.

Как вы сказали, компонент B будет публиковать данные, и это должно изменить родителя state.

Поскольку реагирующий дочерний компонент повторно отображается всякий раз, когда его родительский компонент state или props изменяется, компонент A также будет повторно отображаться.

Так что все, что вам нужно сделать, это использовать useEffect без второго параметра [].

На самом деле это не вопрос использования Hooks, а вопрос структуры реактивного компонента.

Имейте в виду, что два дочерних компонента не должны напрямую взаимодействовать друг с другом.

Другие вопросы по теме