Omówienie składników szablonu

Ukończone

Składniki szablonu, które można ponownie używać w wielu aplikacjach, stanowią podstawę wypróbowanego i przetestowanego układu i logiki dostosowywania elementów interfejsu użytkownika. Składniki szablonu stosują ustandaryzowany projekt w aplikacji internetowej, definiując wspólne elementy i stosując je do wszystkich stron. Szablony mogą usprawnić aktualizacje, takie jak zmiana nazwy, ponieważ wprowadzasz modyfikacje tylko w centralnej lokalizacji szablonu.

W tej lekcji dowiesz się więcej o składnikach szablonów i sposobach ich uwzględnienia w aplikacji Blazor.

Typ renderfragmentu

Składnik szablonu dostarcza układ i logikę dla co najmniej jednego fragmentu znaczników HTML. Kod HTML jest renderowany przy użyciu kontekstu, który udostępnia składnik szablonu. Składnik szablonu używa obiektu jako symbolu zastępczego RenderFragment , w którym adiustacja jest wstawiana w czasie wykonywania.

Szablon jest tylko zwykłym składnikiem Razor. Aby użyć szablonu, składnik korzystający odwołuje się do niego jak każdy inny składnik. Nazwa ChildContent jest domyślna dla parametru RenderFragment . Możesz nadać parametrowi inną nazwę, ale musisz określić tę nazwę, gdy strona testowa zastosuje szablon.

Ogólne parametry renderfragmentu<T>

Domyślnie RenderFragment klasa działa jako symbol zastępczy bloku znaczników HTML. Można jednak użyć typu RenderFragment<TValue> ogólnego do renderowania innych typów zawartości przy użyciu parametru typu i zapewnienia logiki do obsługi określonego typu w składniku szablonu.

Załóżmy na przykład, że chcesz utworzyć szablon, który wyświetla elementy w kolekcji. Możesz użyć pętli języka C# foreach , aby wykonać iterację po kolekcji i wyświetlić znalezione elementy. Jednak kolekcja może zawierać dane dowolnego typu, więc potrzebny jest ogólny sposób renderowania każdego elementu.

Aby napisać składnik szablonu typu ogólnego, należy określić parametr typu w samym składniku szablonu i w składniku zużywanym szablonu. Poniższa lista reprezentuje typowe cechy składników szablonu typu ogólnego.

  • Parametr typu w składniku szablonu jest wprowadzany przy użyciu @typeparam dyrektywy . W razie potrzeby składnik szablonu może mieć wiele parametrów typu.
  • Szablon prawdopodobnie definiuje parametr zawierający wyliczalną kolekcję obiektów typu określonego przez parametr typu.
  • Szablon definiuje ChildContent również parametr na podstawie typu ogólnego RenderFragment , który przyjmuje ten sam parametr typu.

Aby uzyskać więcej informacji, zobacz ASP.NET Core Blazor templated components (Składniki szablonowe platformy Blazor dla platformy ASP.NET Core).