Professor, uma duvida, qual o motivo do tarefaSelecionada.completa = true no codigo, não entendi a criação do metodo, poderia me explicar?
Professor, uma duvida, qual o motivo do tarefaSelecionada.completa = true no codigo, não entendi a criação do metodo, poderia me explicar?
Olá, Eduardo. Tudo bem?
Esse trecho de código é importante pra garantir que o estado da tarefa seja persistido no local storage e, consequentemente, mantido mesmo após a página ser recarregada.
Atualização Visual: Quando uma tarefa é marcada como completa, o código atualiza a interface do usuário. Isso inclui remover a classe que indica que a tarefa está ativa e adicionar a classe que indica que a tarefa está completa. E, o botão da tarefa é desativado para evitar novas interações.
Persistência no Local Storage: A linha tarefaSelecionada.completa = true
é crucial porque ela altera o objeto tarefaSelecionada
para refletir que a tarefa foi completada. Essa alteração é importante para que, ao chamar a função atualizarTarefas()
, o estado atualizado da tarefa (completa = true) seja salvo no local storage.
document.addEventListener('FocoFinalizado', () => {
if (tarefaSelecionada && liTarefaSelecionada) {
liTarefaSelecionada.classList.remove('app__section-task-list-item-active');
liTarefaSelecionada.classList.add('app__section-task-list-item-complete');
liTarefaSelecionada.querySelector('button').setAttribute('disabled', 'disabled');
// Define a tarefa como completa
tarefaSelecionada.completa = true;
// Atualiza o local storage com o novo estado da tarefa
atualizarTarefas();
}
});
Por que isso é importante?
tarefaSelecionada.completa = true
, garantimos que essa informação é salva no local storage. Assim, mesmo que a página seja recarregada, o estado da tarefa é recuperado corretamente.Espero ter ajudado.
Um abraço.