V
кнопка с обратным отсчетом, useEffect требует переменную timer в зависимости и выполняется с каждым рендером, а хотелось бы только один раз.
как такое принято делать?
https://codesandbox.io/s/restless-moon-mh60l
useEffect(() => {
console.log("effect");
const timerInterval = setInterval(() => {
setTimer((timer) => {
if (timer === 0) {
setVisible(false);
return 0;
} else {
return timer - 1;
}
});
}, 1000);
return () => {
clearInterval(timerInterval);
};
}, [setVisible]);

