Uso de los componentes de plantilla
Los componentes de plantilla, que se pueden reutilizar en varias aplicaciones, proporcionan una base de diseño probado y lógica para la personalización de elementos de la interfaz de usuario. Los componentes de plantilla aplican un diseño estandarizado a una aplicación web mediante la definición de elementos comunes y su aplicación a todas las páginas. Las plantillas pueden simplificar las actualizaciones, como el cambio de marca, ya que solo se realizan modificaciones en la ubicación central de la plantilla.
En esta unidad, aprenderá sobre los componentes de plantilla y cómo puede incorporarlos a una aplicación de Blazor.
El tipo RenderFragment
Un componente de plantilla proporciona el diseño y la lógica para uno o varios fragmentos de marcado HTML. El código HTML se representa mediante el contexto que proporciona el componente de plantilla. El componente de plantilla usa un objeto RenderFragment como marcador de posición en el que se inserta el marcado en tiempo de ejecución.
Una plantilla es simplemente un componente de Razor normal. Para usar una plantilla, un componente de consumo hace referencia a ella como a cualquier otro componente. El nombre ChildContent
es el predeterminado de un parámetro RenderFragment
. Puede asignar otro nombre al parámetro, pero debe especificar este nombre cuando la página de prueba aplique la plantilla.
Parámetros RenderFragment<T> genéricos
De manera predeterminada, la clase RenderFragment
actúa como marcador de posición para un bloque de marcado HTML. Sin embargo, puede usar el tipo genérico RenderFragment<TValue> para representar otros tipos de contenido mediante un parámetro de tipo y, luego, proporcionar la lógica para controlar el tipo especificado en el componente de plantilla.
Por ejemplo, supongamos que quiere crear una plantilla que muestre los elementos de una colección. Puede usar un bucle foreach
de C# para recorrer en iteración la colección y mostrar los elementos que se encuentren. Sin embargo, la colección puede contener datos de cualquier tipo, por lo que necesita una manera genérica de representar cada elemento.
Para escribir un componente de plantilla de tipo genérico, debe especificar el parámetro de tipo en el propio componente de plantilla y en el componente de consumo de la plantilla. En la lista siguiente se representan características comunes de los componentes de plantilla de tipo genérico.
- El parámetro de tipo de un componente de plantilla se introduce mediante la directiva
@typeparam
. De ser necesario, un componente de plantilla puede tener varios parámetros de tipo. - Es probable que la plantilla defina un parámetro que contenga una colección enumerable de objetos del tipo especificado por el parámetro de tipo.
- La plantilla también define un parámetro
ChildContent
basado en el tipoRenderFragment
genérico que toma el mismo parámetro de tipo.
Para más información, vea Componentes de plantilla de Blazor de ASP.NET Core.