Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

[Bug] No se refleja en pantalla la eliminación del cliente

Buenas, quisiera si alguinen puede darme una mano de donde puedo ver mas material para saber porque no se ve en pantalla la eliminacion del cliente en la clase de CRUD, elimina de la base de datos y se ve en consola la eliminación del ID pero solamente en la pantalla no aparece, el bloque de codigo es correcto y realice una comparativa con el original, ademas revisé errores usando recursos. Todo funciona menos el ver en pantalla la eliminación del usuario. No pude ver el error.Agradezco la ayuda.

Dejo el bloque de codigo que hace el proceso

const btn = linea.querySelector("button"); btn.addEventListener("click", () => { const id = btn.id; console.log("se eliminó el:", id) clientServices .eliminarCliente(id) .then((respuesta) => { //console.log(respuesta); }) .catch((err) => alert("Ocurrió un error")); });

return linea;
};
2 respuestas

¡Hola José Roberto!

Por lo que veo en tu código, parece que estás eliminando correctamente al cliente de la base de datos y también estás viendo en consola la eliminación del ID. Sin embargo, no se está reflejando en pantalla la eliminación del usuario.

Podría ser que estás eliminando el elemento de la lista en la que se muestran los clientes, pero no estás actualizando la vista. Para solucionar esto, podrías intentar volver a cargar la lista de clientes después de eliminar uno.

Podrías intentar agregar algo como esto después de la eliminación del cliente:

const listaClientes = document.getElementById("lista-clientes");
listaClientes.innerHTML = "";
clientServices.obtenerClientes().then((clientes) => {
  clientes.forEach((cliente) => {
    listaClientes.appendChild(crearLineaCliente(cliente));
  });
});

Esto debería volver a cargar la lista de clientes después de eliminar uno y debería reflejar la eliminación en pantalla.

Espero que esto te ayude a solucionar tu problema. ¡Un abrazo! :)

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!
solución!

Muchas gracias Profesora Mariana

Pude solucionar agregando una linea de href en la respuesta para que refresque la pantalla, asi ya pude ver el cambio. Muchisimas gracias por la ayuda. Dejo el bloque de código como quedó


 const btn = linea.querySelector("button");
  btn.addEventListener("click", () => {
    const id = btn.id;
    console.log("se eliminó el:", id)
    clientServices
      .eliminarCliente(id)
      .then((respuesta) => {
        //console.log(respuesta);
        window.location.href = "/screens/lista_cliente.html";
      })
      .catch((err) => alert("Ocurrió un error"));
  });
      return linea;
    };