Есть
var1, var2
в состоянии redux'a. Изменение var1 триггерит
UseEffect((var2)=>{changeVar2}, [var1])
. Компонент ре-рендерится два раза.
Как сделать так, чтобы компонент ре-рендерился только при изменении var2?
Пробовал вариант через React.memo, где проверка пропсов:
const isEquivalent = (prevProps, nextProps) => {
return prevProps.var1 < nextProps.var2 ? true : false
}
Но проблема в том, что memo предотовращает выполнение всего компонента, в том числе и эффектов, а не только рендеринг. Из-за этого useEffect не выполняется и var2 не изменяется. А мне нужно предотовратить только ре-рендеринг, а не выполнение useEffect.