Estou criando um formulário de cadastro com paginação utilizando JavaScript puro. Quando avanço para a segunda página, retorno para a primeira e avanço novamente para a segunda, o formulário carrega e avança inesperadamente para a terceira página, ficando em um loop eterno no event listener submit, que acredito ser a razão devido ao que vi usando breakpoints. Já tentei remover o listener, mas não resolveu o problema, alguém pode me ajudar a encontrar a razão desse comportamento?
Parte do codigo em questao que esta em loop:
if (formularioListener) {
formulario.removeEventListener('submit', formularioListener);
}
formularioListener = (dados) => {
salvarDados(dados, estadoFormulario);
if(estadoFormulario.paginaAtual >= 3){
return
}else{
estadoFormulario.paginaAtual += 1;
}
exibirFormulario(estadoFormulario);
recuperarInfo(estadoFormulario);
};
formulario.addEventListener('submit', formularioListener);
Observações:
- Estou salvando os dados no localStorage e atualizarei isso assim que aprender a lidar com bancos de dados.
- Essa é uma página SPA (Single Page Application), estou fazendo toda a renderização de novos conteúdos pelo JavaScript puro, sem uso de bibliotecas.
Agradeço antecipadamente pela ajuda!