From 71de2807f45273e49f734031537e60bef281a2b4 Mon Sep 17 00:00:00 2001 From: counterweight Date: Mon, 26 May 2025 00:27:20 +0200 Subject: [PATCH] extract service methods --- parts/2/phoneBook/db.json | 35 +++++++++++++++++++++++++++++++++++ parts/2/phoneBook/src/App.jsx | 25 +++++++++++++++---------- 2 files changed, 50 insertions(+), 10 deletions(-) diff --git a/parts/2/phoneBook/db.json b/parts/2/phoneBook/db.json index 1a552ba..0e2bb2a 100644 --- a/parts/2/phoneBook/db.json +++ b/parts/2/phoneBook/db.json @@ -29,6 +29,41 @@ "id": "bbb", "name": "bbb", "number": "333" + }, + { + "id": "", + "name": "", + "number": "" + }, + { + "id": "", + "name": "", + "number": "" + }, + { + "id": "", + "name": "", + "number": "" + }, + { + "id": "", + "name": "", + "number": "" + }, + { + "id": "", + "name": "", + "number": "" + }, + { + "id": "", + "name": "", + "number": "" + }, + { + "id": "ccc", + "name": "ccc", + "number": "333" } ] } \ No newline at end of file diff --git a/parts/2/phoneBook/src/App.jsx b/parts/2/phoneBook/src/App.jsx index aea8bcc..2fa4a94 100644 --- a/parts/2/phoneBook/src/App.jsx +++ b/parts/2/phoneBook/src/App.jsx @@ -41,8 +41,19 @@ const App = () => { const [newName, setNewName] = useState(""); const [newNumber, setNewNumber] = useState(""); + const getPersons = () => { + return axios.get("http://localhost:3001/persons"); + }; + const addPerson = () => { + return axios.post("http://localhost:3001/persons", { + name: newName, + number: newNumber, + id: newName, + }); + }; + useEffect(() => { - axios.get("http://localhost:3001/persons").then((response) => { + getPersons().then((response) => { console.log(response.data); setPersons(response.data); }); @@ -59,15 +70,9 @@ const App = () => { return; } - axios - .post("http://localhost:3001/persons", { - name: newName, - number: newNumber, - id: newName, - }) - .then((response) => { - setPersons(persons.concat(response.data)); - }); + addPerson().then((response) => { + setPersons(persons.concat(response.data)); + }); setNewName(""); setNewNumber(""); };