本文介绍了可以从组件继承剃刀标记吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我当前正在尝试抽象出一种机制,以便在IAsyncEnumerable可用时对其进行枚举。
我有一个基本组件类,大致如下
// EnumerableRazorComponentBase.razor
@typeparam TObject
@if (!(this.enumerationTask?.IsCompleted ?? false))
{
// Display loading bar
}
// EnumerableRazorComponentBase.razor.cs
public abstract partial class EnumerableRazorComponentBase<TObject> : ComponentBase
{
private Task enumerationTask;
// rest of enumeration logic...
}
现在我在剃须刀组件中继承此基类
// SomeComponent.razor
@inherits EnumerableRazorComponentBase<IMyInterface>
// other razor markup
@code {
// rest impl
}
EnumerableRazorComponentBase.razor.cs
已正确继承并按预期工作,但EnumerableRazorComponentBase.razor
中的标记未添加到SomeComponent.razor
的标记中。
是否可以从基类继承razor标记,如果可以,我做错了什么/缺少了什么?
推荐答案
可以。只需添加一个对base.BuildRenderTree的调用,如下所示:
// SomeComponent.razor
@inherits EnumerableRazorComponentBase<IMyInterface>
@{
base.BuildRenderTree(__builder);
}
<h2>Additional markup in subclassed component</h2>
@code {
// rest impl
}
这篇关于可以从组件继承剃刀标记吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!