4GeeksAcademy / mariasr79-react-context

1 stars 0 forks source link

Correcciones #1

Open AlvaroMartinFernandez opened 6 months ago

AlvaroMartinFernandez commented 6 months ago

Buenas Maria,

Son errores de sintaxis, y errores que están en varios sitios, en primer lugar te recomiendo que sigas la pauta de ir haciendo el código poco a poco , has realizado todas las actions cuando en el primer actions tienes un error de sintaxis tienes que ir poco a poco.

Como lo tienes:

getUsers: async () => {
                const users = await fetch("https://playground.4geeks.com/contact/agendas/mariasr79/contacts");
                const userJson = await users.json();
                setStore({ users: userJson.users })
                if (!resp.ok) {
                    createUser();
                }
                return resp.json()
            }).then(user => setUser(user))

            },

Como deberia ser:

        getUsers: async () => {
                const users = await fetch("https://playground.4geeks.com/contact/agendas/mariasr79/contacts");
                const userJson = await users.json();
                setStore({ users: userJson.users })
                if (!resp.ok) {
                    createUser();
                }
                return resp.json()
            }

Mas abajo tienes otro error por que estas comentando la llave de cierre

Como lo tienes

createContact: async (name, phone, email, address) => {
                await fetch("https://playground.4geeks.com/contact/agendas/mariasr79/contacts",
                    {method: "POST",
                        body: JSON.stringify({
                            "name": name,
                            "phone": phone,
                            "email": email,
                            "address": address
                          })
                    }
                )
            //  .then(resp => {
            //      if (resp.ok) {
            //          return resp.json()
            //      }
            //  }).then(respJson => {
            //      const userTaks = user.todos;
            //      const newUser = {
            //          ...user,
            //          todos: [...userTaks, respJson]
            //      };
            // },

Como deberia ser

createContact: async (name, phone, email, address) => {
            await fetch("https://playground.4geeks.com/contact/agendas/mariasr79/contacts",
                {
                    method: "POST",
                    body: JSON.stringify({
                        "name": name,
                        "phone": phone,
                        "email": email,
                        "address": address
                    })
                }
            )

        },

En el Delete te pasa lo mismo has comentado el cierre del parentesis en este caso te voy a indicar que lo borres y lo hagas de 0

El problema basicamente ha sido que estas mezclando promesas que llevan el then y el asynx y await que no hace falta. O se realiza de una forma los fetch o de otra pero no se puede hacer un hibrido cuidado con eso.

Por otro lado recuerda poco a poco por que el primer error de sintasis lo has ido arrastrando durante todo el codigo, luego has tenido otros por comentar la llave en un caso y el parentesis que no debias en otro.

mariasr79 commented 6 months ago

Ya corregí los errores Álvaro, pero te comento que lo de hacer el proyecto poco a poco fue lo que hice tras mi experiencia anterior y tu recomendación, lo que ocurre es que no encontraba la solución, ni con el mentor, entonces, fue después cuando empecé a seguir adelante y comentar bloques de código para no dar lugar la acumulación de errores. Así que, lo de los comentarios es posterior al error de que no se me levantase el proyecto. Porfa, he vuelto a revisar y sigue sin levantar, dime en que estoy fallando ahora ...

AlvaroMartinFernandez commented 6 months ago

Buenas maria la importacion del contexto la estas haciendo mal , context es una exportacion por defecto no de las otras por lo que la importacion en Home y en el resto de vista del context es asi import { Context } from "../store/appContext"