Neste caso ele não estaria cancelando o interval logo após a implementação?
const stoppableInterval = (fn, milisseconds) => {
const timer = setInterval(fn, milisseconds);
return () => {
clearTimeout(timer);
}
}
Neste caso ele não estaria cancelando o interval logo após a implementação?
const stoppableInterval = (fn, milisseconds) => {
const timer = setInterval(fn, milisseconds);
return () => {
clearTimeout(timer);
}
}
Boa tarde, Tarcísio! Como vai?
Não. Veja que o retorno da função stoppableInterval()
é uma outra função. Ela sim quando chamada irá parar o timer do setInterval()
. Ficaria algo mais ou menos assim.
const stopTimer = stoppableInterval(() => console.log('setInterval() executando.'), 2000); // Inicia o setInterval e retorna a função de parada do timer.
stopTimer(); // Para o timer.
Pegou a ideia? Qualquer coisa é só falar!
Grande abraço e bons estudos, meu aluno!