考虑一个简单的 blazor 组件MyText
<p>@Title</p>
public partial class MyText
{
[Parameter] public string Title { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在页面中我将其用作:
<MyText Title="Abc" />
现在我想扩展这个组件,但不想更改它,而是通过新组件MyTextEx派生它并添加另一个参数。就像是:
@inherits MyText
<!-- Show base component something like: --!>
@base
<p>@Message</p>
public partial class MyTextEx
{
[Parameter] public string Message { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我找不到如何显示基本组件的内容?所以它被渲染为:
<p>@Title</p>
<p>@Message</p>
Run Code Online (Sandbox Code Playgroud)
请注意,这是一个简化的示例,我的基本组件有很多参数、事件,并希望虚拟方法可以被扩展/派生组件覆盖。我试图避免在基本组件的 razor 文件中使用类似于组合的方法,因为据我所知,我必须再次用参数填充它:
@inherits MyText
<MyText Title="@Title" />
<p>@Message</p>
Run Code Online (Sandbox Code Playgroud)
我能够找到带有基本/抽象组件的继承示例,但找不到带有最终组件的继承。
知道如何实现这一目标吗?
谢谢,查巴