Estava com dúvida nessa questão, principalmente por conta da seguinte que é implementado a função de remoção de tarefas. Algo que ocorreu no teste foi:
- A tarefa foi concluída e se manteve selecionada, porém ao clicar nela não era possível desselecioná-la.
- Cliquei no botão para deletar, mesmo editando outra tarefa, porém a que estava selecionada era a que já tinha concluída.
- A tarefa que foi deletada foi a concluída e não a que eu queria deletar.
O que alterei foi, dentro da função CreateTask(), na parte do SvgIcon.addEvetnListener, acrescentei 3 linhas de código que removem a classe que dá o visual de selecionado ao li, remove a tarefaSleecionada da memória e o texto da descrição da tarefa selecionada:
// Código omitido
svgIcon.addEventListener("click", (event) => {
if (tarefa == tarefaSelecionada) {
event.stopPropagation();
button.setAttribute("disabled", true);
li.classList.add("app__section-task-list-item-complete");
tarefaSelecionada.concluida = true;
updateLocalStorage();
// Lógica para desseleção automática da tarefa quando concluída, para evitar erros
li.classList.remove("app__section-task-list-item-active")
tarefaSelecionada = null
taskActiveDescription.textContent = null
}
// Código omitido