-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
60 lines (55 loc) · 1.78 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
const form = document.getElementById("form");
const createElt = (name, email) => {
const elt = document.createElement("li");
elt.setAttribute("name", name);
elt.setAttribute("email", email);
elt.innerHTML = "L'adresse de " + name + " est " + email;
elt.addEventListener("click", () => {
// Ici tu dois envoyer une requete de type POST a
// http://localhost:3000/delete avec en body un objet user avec le nom et l'email
// en retour, dans le .then, fais appel a la fonction loadTable pour refresh le tableau
});
return elt;
};
form.addEventListener("submit", (e) => {
e.preventDefault();
const name = document.getElementById("name").value;
const email = document.getElementById("email").value;
const user = {
name: name,
email: email,
};
fetch("http://localhost:3000/user", {
method: "post",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify(user),
})
.then((response) => {
return response.json();
})
.then((param) => {
const list = document.getElementById("list");
list.innerHTML = "";
param.forEach((user) => {
const elt = createElt(user.name, user.email);
list.appendChild(elt);
});
});
});
const loadTable = () => {
fetch("http://localhost:3000/")
.then((response) => {
return response.json();
})
.then((param) => {
const list = document.getElementById("list");
list.innerHTML = "";
param.forEach((user) => {
const elt = createElt(user.name, user.email);
list.appendChild(elt);
});
});
};
loadTable();