в 15 минут?
Сейчас делаю это через BackgroundTimer, раз в 15 минут в стейте перещелкиваю флаг isShow в значение true, модалка появляется
Но проблема в том, что иногда будто таймер слетает, и модалка начинает показываться чуть ли не каждую секунду. Но через несколько таких багованных показов она снова отображается нормально
Есть у кого-то мысли, как правильно отображать алерт раз в N-ое кол-во времени?
А если в App в useEffect setInterval замутить?
Типа const MINUTE_MS = 60000; useEffect(() => { const interval = setInterval(() => { console.log('Logs every minute'); }, MINUTE_MS * 15); return () => clearInterval(interval); }, [])
Тут проблема в том, что если юзер допустим свернет приложение, или сделает какое-то действие, которое отправит приложение в фоновый режим, то setInterval перестанет идти Но вообще пока тоже думаю в сторону setInterval, чтобы хоть мороки не было лишней))
делай интервал который каждую секунду чекает временные метки, каждые 15 минут записывай новый timestamp и интервал будет сравнивать это время с текущим
Ну тогда сетить в стор дату следующего показа и чекать
Обсуждают сегодня