Blazor中定义RenderFragment是否需要__builder?求示例演示
Blazor中不使用__builder定义RenderFragment的方法
原写法(带__builder)
private RenderFragment _header => __builder => { <tr> <th>Date</th> <th>Temp. (C)</th> <th>Temp. (F)</th> <th>Summary</th> </tr> };
简化写法1:直接赋值RenderFragment
无需显式声明__builder参数,Blazor编译器会自动处理底层渲染逻辑:
private RenderFragment _header = @<tr> <th>Date</th> <th>Temp. (C)</th> <th>Temp. (F)</th> <th>Summary</th> </tr>;
简化写法2:用方法返回RenderFragment
如果需要动态生成内容,可通过方法返回RenderFragment,同样不需要写__builder:
private RenderFragment GetHeader() { // 可在此添加动态逻辑,比如根据条件修改表头内容 return @<tr> <th>Date</th> <th>Temp. (C)</th> <th>Temp. (F)</th> <th>Summary</th> </tr>; }
渲染引用方式
在组件的 Razor 模板中直接引用即可:
<table> @_header <!-- 或使用方法形式 --> @GetHeader() <!-- 表格主体内容 --> </table>
内容的提问来源于stack exchange,提问作者MrC aka Shaun Curtis
相关产品推荐
相关产品推荐

