Ao finalizar tarefa, ele chama este método de editar passando false para o parâmetro atualizarSubject. Como que o valor é persistido se a lógica dentro do subscribe não é chamada? Está lógica dentro do subscribe só está relacionada ao frontend da aplicação em si? Não há nenhuma relação com a chamada do método HTTP Put que atualiza o valor no backend da aplicação?
editar(tarefa: Tarefa, atualizarSubject: boolean): void {
const url = `${this.API}/${tarefa.id}`;
this.http.put<Tarefa>(url, tarefa).subscribe(tarefaEditada => {
if(atualizarSubject) {
const tarefas = this.tarefasSubject.getValue();
const index = tarefas.findIndex(tarefa => tarefa.id === tarefaEditada.id);
if(index !== -1) {
tarefas[index] = tarefaEditada;
this.tarefasSubject.next(tarefas);
}
}
})
}