是否可以在按钮的 onclick 事件上创建 Blazor 组件

Is it possible to create a Blazor component on button's onclick event

我对 Blazor 还很陌生。因此,非常感谢所有关于我的问题的指导和指导。

我正在开发一个 Blazor 页面,我在其中实施了 Blazorise 开源库以在页面中实施 <CardDeck>...</CardDeck>(例如 Parent.razor)。在 CardDeck 之下,我在剃须刀组件内部实现了一个 Card。我正在绑定从数据库中检索到的数据对象。

Parent.razor 的代码如下。

    <CardDeck>
          <Button @onclick="SomeMethodToCreateComponent"
          @foreach(var item in List)
          {
             //implementing component page (eg. CardComponent.razor)
             <CardComponent>...</CardComponent>
          }
    </CardDeck>

    @Code{
        public void SomeMethodToCreateComponent()
        {
             //Code to create a component on button onclick
        }
    }

组件页面代码(例如Card.razor)


    <Card>
     <CardBody>
        <CardTitle Size="5">Card title 1</CardTitle>
        <CardText>
            Lorem ipsum
        </CardText>
        </CardBody>
    </Card>

现在此功能得到了增强。在父剃须刀页面上,我放置了一个按钮。在该按钮的 @onclick 事件中,我需要生成一个具有 <Card>...</Card> 层次结构的组件。每当单击父页面中的按钮时,都应生成一张卡片。可能吗?

它比你想象的要简单得多。

public void SomeMethodToCreateComponent()
{
     //Code to create a component on button onclick
     var newItem = ...
     List.Add(newItem);
} // auto re-render here and the @foreach will render the new item