Blazor-@typeparam
@typeparam指令主要应用于模板化的组件中,用于给组件指定泛型类型的参数
我们可以使用@typeparam指令做一个通用的子组件,模板化组件,通过传入泛型类型,让模板组件的通用性更强
下面我们创建一个子组件来说说@typeparam指令的用法
创建一个通用组件TypeparamModule,使用@typeparam指令,我们创建一个List用来
<h3>TypeparamModule</h3>
@typeparam T
@foreach (var item in list)
{
<p>@item</p>
}
@code {
List<T> list = new List<T>();
}
我们创建一个ShowModule组件用来展示TypeparamModule.razor组件,我们可以在组件中设置TypeparamModule的泛型类型
@page "/ShowModule"
<h3>ShowModule</h3>
<TypeparamModule T="string"></TypeparamModule>
@code {
}
我们可以把TypeparamModule.razor的list数据暴露出来,这里可以使用[Parameter]特性,使用[Parameter]特性需要将字段修改为属性,我们做如下修改。
<h3>TypeparamModule</h3>
@typeparam T
@foreach (var item in list)
{
<p>@item</p>
}
@code {
[Parameter]
public List<T>? list { get; set; }
}
运行一下,结果如下: