hola!
estuve leyendo el foro a ver si conseguia solución pero no he podido dar con el fallo... No me esta guardando los datos que se explican en esta clase... alguien me podría ayudar a ver donde estoy errando?
muchas gracias!
Registro_controller.js
import { clientServices } from "../service/client-service.js";
const formulario = document.querySelector("[data-form]");
formulario.addEventListener("submit", (evento) => {
evento.preventDefault();
const nombre = document.querySelector('[name = "nombre"]').value;
const email = document.querySelector('[name = "email"]').value;
clientServices
.crearCliente(nombre, email)
.then(() => {
window.location.href = "/screens/registro_completado.html";
})
.catch((err) => console.log(err));
});
Cliente_controller.js
import { clientServices } from "../service/client-service.js";
//backticks
const crearNuevaLinea = (nombre, email, id) => {
const linea = document.createElement("tr");
const contenido = `
<td class="td" data-td>
${nombre}
</td>
<td>${email}</td>
<td>
<ul class="table__button-control">
<li>
<a
href="../screens/editar_cliente.html"
class="simple-button simple-button--edit"
>
Editar
</a>
</li>
<li>
<button class="simple-button simple-button--delete" type="button" id="${id}">
Eliminar
</button>
</li>
</ul>
</td>
`;
linea.innerHTML = contenido;
const btn = linea.querySelector("button");
btn.addEventListener("click", () => {
const id = btn.id;
clientServices
.eliminarCliente(id)
.then((respuesta) => {
console.log(respuesta);
})
.catch((err) => alert("Ocurrió un error"));
});
return linea;
};
const table = document.querySelector("[data-table]");
clientServices
.listaClientes()
.then((data) => {
data.forEach(({ nombre, email, id }) => {
const nuevaLinea = crearNuevaLinea(nombre, email, id);
table.appendChild(nuevaLinea);
});
})
.catch((error) => alert("Ocurrió un error"));
client_services.js
const listaClientes = () =>
fetch("http://localhost:3000/perfil").then((respuesta) => respuesta.json());
const crearCliente = (nombre, email) => {
return fetch("http://localhost:3000/perfil", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({ nombre, email, id: uuid.v4() }),
});
};
const eliminarCliente = (id) => {
return fetch(`http://localhost:3000/perfil/${id}`, {
method: "DELETE",
});
};
export const clientServices = {
listaClientes,
crearCliente,
eliminarCliente,
};