Gatsby: Diseños y plantillas: ¿cómo se supone que deben funcionar y cómo funcionan en este momento?

Creado en 11 jul. 2017  ·  3Comentarios  ·  Fuente: gatsbyjs/gatsby

Estos dos conceptos parecen redundantes. Y he visto algunos problemas que sugieren que no están completamente resueltos en V1. ¿Alguien puede aclarar cómo deberían trabajar y cómo lo hacen?

1) ¿Por qué existen tanto los diseños como los componentes de la plantilla?

1) ¿Cómo se seleccionan diseños alternativos para el contenido? (Vi un campo de frontmatter en el iniciador del blog, pero no pude rastrear ningún efecto real. En cualquier caso, esto parece ser el tipo de cosas que harías en createPages, no una anulación de frontmatter incorporada no ' ¿no es así?)

2) ¿Cómo funcionan las plantillas anidadas? ¿O cómo deberían funcionar? ¿O por qué los necesitaría si puede seleccionar diferentes componentes de plantilla para diferentes páginas?

¡Gracias!

Comentario más útil

puede tomar Layout como una plantilla de orden superior que controla otras plantillas y pasa los componentes globales como Nav, Footer ..., y usa plantillas específicas para diferenciar los contenidos. Por ejemplo, si creé un diseño con barra de navegación y pie de página, y dos plantillas llamadas Páginas y blogs, tanto las páginas como los blogs tomarían el pie de página de la barra de navegación de los diseños y tendrían contenido diferente.

Todos 3 comentarios

re 1) Los componentes de la plantilla son para tipos de página, por ejemplo, publicaciones de blog, páginas de documentación, etc. Los componentes de diseño son para todo lo que se comparte en las páginas, por ejemplo, encabezados, pies de página, barras laterales, etc. Ambos son necesarios porque son cosas muy diferentes :-) Lea también https://www.gatsbyjs.org/docs/building-with-components/

re 2) no puedes ahora. Esto es algo que apoyaremos en el futuro. Esos campos de frontmatter eran viejos y no se usaban. Lo siento por eso. Solo los elimino. Las publicaciones de rebajas se crean con createPage por lo que una forma posible de permitir que una publicación de rebajas anule el diseño predeterminado sería usar frontmatter para seleccionar un diseño.

re 3) tampoco se admite todavía, pero está planificado para el futuro. Un caso de uso es que tiene un diseño global con un encabezado / pie de página y luego una subsección del sitio que tiene una barra lateral de navegación secundaria.

puede tomar Layout como una plantilla de orden superior que controla otras plantillas y pasa los componentes globales como Nav, Footer ..., y usa plantillas específicas para diferenciar los contenidos. Por ejemplo, si creé un diseño con barra de navegación y pie de página, y dos plantillas llamadas Páginas y blogs, tanto las páginas como los blogs tomarían el pie de página de la barra de navegación de los diseños y tendrían contenido diferente.

Gracias, esto aclara las cosas. 😀

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

Oppenheimer1 picture Oppenheimer1  ·  3Comentarios

brandonmp picture brandonmp  ·  3Comentarios

ferMartz picture ferMartz  ·  3Comentarios

ghost picture ghost  ·  3Comentarios

hobochild picture hobochild  ·  3Comentarios