Depois que eu implemento o seguinte código, eu consigo editar os itens da minha lista de compras normalmente assim como os itens da lista de itens já comprados.
const editarItem = (elemento) => {
let novoItem = prompt("Novo item");
if (novoItem.trim()) {
const itemTextoAtualizado = elemento.querySelector("#item-titulo");
itemTextoAtualizado.textContent = novoItem;
}
}
export { editarItem };
Com a verificação que é feita a seguir eu realmente não notei diferença porque, eu já conseguia editar os itens comprados sem eles perderem a estilização, com essa segunda verificação, caso edite um item da lista de compras para o mesmo nome de um item da lista de itens já comprados, não faz diferença aparente, o item continua duplicado, então eu realmente não estou entendendo para que essa verificação serve.
const editarItem = (elemento) => {
let novoItem = prompt("Novo item");
if (novoItem.trim()) {
const itemTextoAtualizado = elemento.querySelector("#item-titulo");
itemTextoAtualizado.textContent = novoItem;
const estavaComprado = elemento.querySelector(".checkbox-input").checked;
if (estavaComprado) {
elemento.querySelector(".checkbox-input").checked = true;
elemento.querySelector(".checkbox-customizado").classList.add("checked");
itemTextoAtualizado.styel.textDecoration = "line-through";
}
}
}
export { editarItem };