React .useEffect

При старте приложения,useEffect срабатывает ,в тот момент когда происходит инициализация State.

const [token, tokenSort] = useState(false);

Так как useEffect связан по token. В дальнейшем если изменяется token, useEffect отрабатывает. Вопрос можно ли каким то образом отменить первое срабатывание, при инициализации useState?

  useEffect(() => {

 }, [token]);

Ответы (1 шт):

Автор решения: Михаил В

Сам useEffect такого не предусматривает, но можно ref использовать, например

const someFunction = () => {
    
    const changeCounter = useRef(false);
    
    useEffect(() => {
    
    
        if(changeCounter.current){
        
            // ...Ваш обработчик
        
        }

        changeCounter.current = true;
    
    }, [token]);
    
}
→ Ссылка