Muy bien, así que especificamos un máximo de 18 también. Así que si cuentas estos, debería haber, ya sabes, 18 de estos. Una vez que te vuelvas más avanzado, puedes hacer cosas de paginación, donde podrías hacer scroll infinito donde simplemente cargas más de inmediato cuando el usuario se desplaza hacia abajo, o tener un botón de cargar más y cargar más. Pero para nosotros, nos detendremos aquí y mostraremos los 18. Muy bien, así que revisa el chat rápidamente. Entonces, Vaka, veo. Entonces, error de tipo, no se puede leer la propiedad
data de indefinido. De acuerdo. Parece que eso viene de este punto en el código, ¿verdad? Diciendo que estás intentando profundizar en
data, pero la respuesta, esta cosa está indefinida. De acuerdo. Veamos. No sé por qué sería eso. Una de las primeras cosas que intentaría es simplemente imprimir en la consola. Probablemente solo haría console.log, la respuesta aquí, guardar eso. Y luego, si abres la
terminal, deberías ver que se imprime
data. Intentaré volver a cargar mi página de blog y veremos si se imprime. Sí, lo hace. Así que si intento volver a cargar mi página de blog con esa declaración de console.log en su lugar, puedes ver que esto es lo que imprime para mí. Así que tienes cualquier
data de publicaciones, y dentro de eso está mi matriz de nodos, y luego algunas otras cosas, carga falsa, estado de red siete. Así es como se espera que sea esa respuesta. Si estás obteniendo algo diferente, entonces debe ser un problema con
Apollo Client, ya sabes, que no está configurado correctamente. Así que solo haría algunas comprobaciones, asegúrate de hacer todo esto correctamente y estás definiendo esta variable de entorno dentro del archivo .env exactamente como esto, tiene que verse exactamente así. Sí, y esto está escrito como debería ser, exactamente así. Así que espero que eso sea suficiente, si no puedes hacer que funcione, siempre puedes usar este punto de control aquí. Hemos terminado de implementar la página de índice del blog. Entonces, Vacha en el chat o cualquier otra persona, si estabas luchando aquí y tenías problemas para hacer que la página de entrada de blog funcionara, en este punto podrías ejecutar git checkout y luego pegar este hash de confirmación y eso debería ponerte al día. Así que deberías poder... Intentaría git checkout con ese hash de confirmación y tal vez hacer comando C o lo siento, control C solo para detener el servidor de
Next.js y luego
npm run dev nuevamente para que vuelva a funcionar. Y en ese punto, deberías ver que la página de blog funciona así. Muy bien, oh, increíble, solucionado. Bien, me alegra escucharlo. Genial, bien, seguiremos adelante entonces. Espero que todos se estén divirtiendo. El número cinco fue, vimos cómo podríamos componer una consulta usando GraphiQL y también hemos logrado el número seis, implementar la página de índice del blog. Usando esa consulta que habíamos compuesto, le dijimos a
Next.js que la ejecutara en tiempo de construcción y luego la enviara como props a nuestro componente y usar eso para renderizar la página, ¿verdad? Así que ahora pasamos al número siete, implementar la página de entrada de blog individual. Como recordatorio, veamos nuestra página de entrada de blog individual. Así que era este punto suspensivo uri catch-all route aquí. Así que si volvemos a eso, veremos, sí, solo recordémonos cómo se ve esto. Así que nuevamente, estamos sacando los datos ficticios, ya sabes, llamados post y dentro de get static props, simplemente los enviamos como props y eso es lo que usamos para renderizar el contenido. Así que solo son datos ficticios en este momento. Así que aquí seguiremos ese mismo patrón donde vamos a, ya sabes, eliminar nuestros datos ficticios y luego construir una consulta para usar en su lugar. Eliminaré esos datos ficticios y volvamos a nuestra instancia gráfica alojada aquí para construir otra consulta. Entonces, una cosa genial que te mostraré es que puedes definir múltiples consultas aquí, eso está permitido siempre y cuando cada una tenga un nombre único. Así que como esta, habíamos llamado a nuestra consulta getPosts así. Y puedes tener múltiples aquí siempre y cuando cada una tenga un nombre único. Entonces puedes hacer consulta getPost singular y luego tener dentro de aquí otra consulta. Y luego, cuando vayas a ejecutarlo, GraphiQL te preguntará, bueno, ¿cuál? Usarás este menú desplegable y dirás, ¿quieres ejecutar usePosts o usePosts? Y puedes decirle cuál quieres ejecutar. Así que esa es una forma genial. Si no quieres eliminar lo que habías trabajado en construir la primera vez, si quieres dejarlo en su lugar o estás probando o lo que sea, está bien tener múltiples siempre y cuando tengan nombres únicos y se puedan ejecutar cada una de ellas. Sin embargo, para nosotros, simplemente eliminemos estos y comencemos desde cero. Esta será una consulta divertida porque será nuestra primera consulta de
GraphQL que acepta una variable. Entonces, en la última, simplemente dijimos, danos las primeras 18 publicaciones de blog y eso es todo. Supongo que técnicamente teníamos una variable porque dijimos que el número 18 es la cantidad que queremos, pero esta será una variable real donde pasaremos el slug, el slug de URL que está visitando el usuario. Lo usaremos para buscar la publicación de blog en particular que es la correcta, cuyos datos necesitamos, si eso tiene sentido. Permíteme mostrarte. Solo déjame volver a poner los datos por un segundo para mostrarte a qué me refiero. Entonces, lo que sucede es que si alguien está en la página del blog aquí y luego intenta hacer clic en una de estas publicaciones, esta es la estructura de URL, los envía... Ya sabes, tenemos como la fecha aquí y luego agregamos end to end test a
WordPress. Tenemos todo esto, que se llama slug en
WordPress. Así que tenemos esta estructura de fecha y luego el slug después de eso, y todo esto, todo esto, la fecha más el slug, todo eso se llama URI. Y eso es lo que vamos a usar en realidad para buscar la publicación de blog. Le diremos a
WordPress, encuentra la publicación de blog que tiene todo esto como su URI.
WordPress lo encontrará en la base de datos y luego proporcionará el título, el contenido, ya sabes, todos los datos que pedimos. Así que esto es lo que vamos a usar como nuestra variable que enviamos a nuestra consulta que vamos a construir aquí. Muy bien, hagámoslo. Muy bien, así que aquí, creemos una nueva consulta para obtener una entrada de blog individual. Así que en el Explorador de
GraphQL, bajemos a la P, elemento de P y encontremos posts singular. Haz clic en eso. Y ya, ya sabes, al igual que la última vez, comenzará a construir la consulta por nosotros. E incluso sabe que post requiere un ID porque pregunta, oh, bueno, ¿qué publicación quieres? Así que tendremos que abordar eso aquí. Así que para el ID, sí, podrías, si quieres, con fines de prueba, podrías ingresar un valor aquí. Incluso si escribes un valor, eso es lo que se usaría como el ID. Sin embargo, para nosotros, queremos que esto sea dinámico. Pasará un valor variable diferente, ya sabes, te dará una variable de valor para cada publicación de blog. Así que lo dejaré en blanco por ahora. Te mostraré cómo convertirlo en una variable. O en realidad, supongo que podríamos usar este. Veamos si podemos hacer que eso funcione con fines de demostración. Muy bien, si digo que ese es el ID y tengo llaves y digo obtener el título, ¿funciona eso en realidad? Sí, no, el ID no está. Así que no intentemos hacer eso aquí. Dejaré en blanco el ID por ahora. Nos centraremos solo en los campos que necesitamos. Tu consulta debería verse así.
Comments