Единственный способ заставить мой код работать - вывести предупреждение. Если я попытаюсь исправить предупреждения, он отправит useEffect в бесконечный цикл. Это потому, что я обновляю состояние в useEffect вот так ...
1
Justin Oberle
10 Фев 2021 в 04:53
2 ответа
Лучший ответ
Один из способов сделать это - использовать функцию обратного вызова в установщике состояния:
useEffect(() => {
setAllHistoricalData(allHistoricalData => ({
...allHistoricalData,
newState: newState,
keys: devices
}));
}, [remainderData, setAllHistoricalData, devices])
2
Nick
10 Фев 2021 в 01:59
Попробуйте этот комментарий
useEffect(() => {
// other code
...
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [])
-1
Diego
10 Фев 2021 в 02:02
Похожие вопросы
Новые вопросы
reactjs
React - это библиотека JavaScript для создания пользовательских интерфейсов. Он использует декларативную компонентную парадигму и стремится быть одновременно эффективным и гибким.