Для стабильной версии крючков (React Version 16.8.0 +)
Для componentDidMount
useEffect(() => {
// Your code here
}, []);
Для componentDidUpdate
useEffect(() => {
// Your code here
}, [yourDependency]);
ДляcomponentWillUnmount
useEffect(() => {
// componentWillUnmount
return () => {
// Your code here
}
}, [yourDependency]);
Так что в этой ситуации вам нужно передать свою зависимость в этот массив.Предположим, у вас есть состояние, подобное этому
const [count, setCount] = useState(0);
И всякий раз, когда увеличивается число, вы хотите перерисовывать компонент функции.Тогда ваш useEffect
должен выглядеть следующим образом:
useEffect(() => {
// <div>{count}</div>
}, [count]);
Таким образом, каждый раз, когда ваш счетчик обновлений, ваш компонент будет повторно отображаться.Надеюсь, это немного поможет.