我想检索RenderFragment
的值以在我的代码中使用:
父组件
<SkillIndividual>
<Skill>Fireball</Skill>
<AttributeType>Fire</AttributeType>
</SkillIndividual>
子组件(SkillIndividual.razor
)
<span>@Skill</span> <span class="semi-transparent-text">(@AttributeType)</span>
@code {
[Parameter] public RenderFragment Skill { get; set; }
[Parameter] public RenderFragment AttributeType { get; set; }
private void CheckValue()
{
// Check the value of Skill (Fireball in this case)
}
}
我知道我可以创建[Parameter] public string Skill {get;set;}
,但是我觉得那会破坏我的代码流程。如果我可以从RenderFragment
中获取值,那么代码将变得更加简洁。
答案 0 :(得分:2)
RenderFragment是委托类型,您不能访问其组成部分。 通常,当您要与组件的子级内容相关时,可以定义一个RenderFragment类型的属性,该属性由约定ChildContent命名。
简而言之,您无法从这些滞后值中提取值。它们只能执行和渲染。组件参数有什么问题?