Blazor组件继承

时间:2019-08-31 11:38:15

标签: asp.net-core blazor blazor-client-side

您好,我是Blazor的新用户,任何人都可以通过仅使用内联组件而不覆盖BuildRenderTree方法的方式来了解Blazor的操作方法。

想法是创建一个始终呈现此HTML标签的基础组件(我们将其称为Component.razor,它是抽象的,继承了ComponentBase)。

<div id="@id" class="component @class" state="@state"></div>

基本组件始终具有id(自动递增)和状态变量(用于组件状态,例如启用,禁用等)

然后,例如,我们可以通过@Inherits组件将该组件继承到Button中,但是在Button.razor本身内部仅具有以下内联HTML:

<div class="label">@buttonText</div>

但是由于Button继承了Component,因此生成的HTML将是:

<div id="123" class="component button" state="1">
    <div class="label">Submit</div>
</div>

请注意,Button还将在父div中添加“ button”类名。 而且继承可以根据需要继续,例如Component-> Button-> MultiSelectButton,等等。

请告知,非常感谢

0 个答案:

没有答案