Entonces, vamos a seguir adelante y simplemente ir aquí. Y creo que son todas estas partes internas aquí. Puedo... Salí muy rápido. Creo que esas son las partes. Sí. Muy bien. Entonces, lo que queremos hacer aquí es simplemente dejar esto en una UL. Tal vez. Siempre me inscribo en estas clases largas y luego siempre pienso, oh, sí, estaré bien. Al final, solo estoy escribiendo basura. De acuerdo. Así que podemos confirmar que esta parte funciona aquí. Así que vamos a importar nuestra biblioteca ahora para ayudarnos a trabajar con esto. Vamos a importar desde... Wow. Tal vez estaba mejor cuando estaba de pie en lugar de... Desde nuestra biblioteca generada aquí. Así que vamos a ir a nuestras utilidades, y vamos a entrar en nuestro repositorio generado, y vamos a entrar en Zeus, y queremos los hooks de
Apollo. Y lo que queremos hacer es usar la consulta tipada. Y a partir de aquí, vamos a hacer una consulta real de
data. Tengo que recordar que con el uso de la consulta tipada aquí, podría ser totalmente... Podría ser el operador de propagación. Desafortunadamente, no es... Es el operador de propagación. De acuerdo. Así que vamos a propagar estos valores aquí. Así que es
data y error y loading son valores posibles aquí. Usamos la consulta tipada. Y a partir de aquí, vamos a obtener una lista de nuestros usuarios. Y debido a que tenemos filtros de entrada, aquí es donde la gente se molesta un poco con los filtros de entrada de
GraphQL. Y puede que sea justo, pero creo que una vez que lo aprendes, lo aprendes. Así que está bien. Tu consulta es en realidad un array con tus filtros de entrada como el primer objeto. Así que aquí podríamos hacer cosas como where... Y verás estas sugerencias de tipos que aparecen, ¿verdad? Donde es como, muy bien. Quiero decir, puedes simplemente profundizar aquí y decir un nombre, es igual a Jesse, por ejemplo. Así que obtienes sugerencias de tipos, lo cual es fantástico. Voy a dejar esto en blanco porque quiero a todos, pero aún así necesito pasar el primer objeto. Y luego lo que hago aquí es simplemente profundizar en las propiedades. Y quiero el nombre, que es el único que realmente tengo disponible en este contexto. Y digo true en el campo. Así que obtengo este tipo de cosas. Así que obtengo estos pares clave-valor que se asignan a los campos reales de la consulta. Y digo cuáles quiero. Ahora puedo hacer cosas como, ya sabes, contraseña, o puedo hacer cosas como un correo electrónico aquí y decir false. Y si estuviera en un entorno con credenciales, podría acceder a eso. No puedo acceder a eso. Así que no podré acceder a eso aquí. Lo siento, así. Así que puedo dejar esto como false, y ni siquiera estaría solicitando eso. Pero podría hacer algo como si dijera, ya sabes, es administrador, entonces hacer esto realmente lo estás solicitando, y si no, false. Esa es la verdadera potencia aquí en esta forma de consulta. Porque en lugar de escribir muchas consultas, dame una consulta de tipo administrador, o dame una consulta de tipo usuario, un usuario autorizado, o una consulta de usuario, puedo pasar propiedades booleanas para activar y desactivar los campos que estoy solicitando, en lugar de hacer algo como interpolación de cadenas para decir que quiero esta parte de
data de mi servidor cuando soy esta persona. Y eso me gusta mucho, porque eso mapea el caso de uso ideal de un
GraphQL, que es una sintaxis súper sencilla para consultar este contenido y ejecutar estos resolutores, pero sin tener que escribir un montón de tipos de cadenas diferentes. Así que, en este caso, no tengo acceso a eso, no cómo, por ahora. Así que voy a pasar esto así. Así que tengo esta consulta de tipo usuario, tengo esta consulta de
GraphQL, y lo que vamos a hacer es simplemente bajar aquí a nuestra UL que teníamos, y vamos a hacerlo de una manera muy rápida y decir, de acuerdo,
data, y data.map, y luego vamos a obtener el usuario y el índice, y vamos a devolver los LIs donde tenemos la clave igual al índice aquí, y vamos a pasar el usuario.nombre. Y se queja de que mapeo, porque data.usuario.map. Así que lo que vamos a hacer es data.usuario. Esto es potencialmente indefinido. Así que tenemos este contexto. Vamos a comprobar si obtuvimos lo que queríamos. Espera un segundo para que haga la consulta. Y tenemos nuestros usuarios devueltos desde la cadena. Así que es una cantidad considerable de código de plantilla, y lleva mucho tiempo escribirlo, pero una vez que lo tienes, lo tienes. Y luego puedes usar esta cáscara, este envoltorio, y de nuevo, estoy subiendo todo esto al servidor para que lo tengas, y puedes simplemente clonar este repositorio y estar listo para empezar. Pero una vez que la plantilla está en su lugar, es una forma realmente buena de hacerlo. Así que si quisiéramos tener algo como ver todas las opciones que tienen las consultas de filtrado de Hazura para mí, esa API de
GraphQL generada, puedo hacer todo eso de introspección aquí directamente dentro de mi IDE. Y eso es realmente genial, ¿sabes? Puedes hacer cosas como esa. Y luego también puedes hacer cosas como, ya sabes, como, puedes hacer cosas como, ya sabes, eso es realmente genial, ¿sabes? Puedes hacer cosas como eso. y luego también puedes hacer cosas como, ya sabes, como, puedes hacer cosas como, ya sabes, eso es realmente genial, ¿sabes? Puedes hacer cosas como es como y pasar cualquier filtros y cosas así. Así que eso es lo básico del filtrado. Ahora, vamos a intentar crear una mutación. Vamos a intentar crear un sistema de inicio de sesión aquí que nos permita crear un sí, crear un estado de usuario. Así que vamos a intentarlo en los ¿qué es eso? No sé. ¿Quedan 30 minutos? Son aproximadamente 30 minutos. 15 o 30. 30. Así que creo que tenemos tiempo. Así que suponiendo que a nadie le importe, voy a ir un poco más rápido aquí con algunas de las partes del código que voy a pegar para que tengas acceso a ellas. Y realmente voy a decir aproximadamente lo que hace el código sin tanto recorrido. Y veremos si podemos realmente hacer que esta parte se ejecute en 30 minutos. Así que espero que esté bien. Vas a obtener la versión aproximada del GitHub hoy. También lo voy a envolver para ti con un lazo. Así que eso se limpiará esperemos mañana. Y eso será algo que también estará bien documentado. Así que vamos a ir
Comments