小编Zig*_*gas的帖子

Blazor - 将函数传递给动态组件

我希望通过 Blazor 中的 DynamicComponent 在组件之间进行流畅的通信。因此,我想知道是否可以将函数传递给 DynamicComponent,因为现在它不知道将呈现的组件需要一个函数才能完全运行。欢迎所有建议。

Index.razor

@page "/"

/*This is where I'd like for all of my components to get rendered cleanly*/
<DynamicComponent Type="selectedType" /*Here I'd like to pass a function "GoToComponent"*/ />

@code {
    public void GoToComponent(string name)
    {
        selectedType = Type.GetType($"Namespace.Pages.{name}");
    }
}
Run Code Online (Sandbox Code Playgroud)

LandingComponent.razor

<p @onclick="() => OnClickFunction.InvokeAsync("First")">GO TO FIRST</p>
<p @onclick="() => OnClickFunction.InvokeAsync("Second")">GO TO SECOND</p>

@code {
    [Parameter] public EventCallback<string> OnClickFunction { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

FirstComponent.razor

<p @onclick="() => OnClickFunction.InvokeAsync("Landing")">GO TO LANDING</p>
<p …
Run Code Online (Sandbox Code Playgroud)

c# components blazor blazor-component .net-6.0

2
推荐指数
1
解决办法
2759
查看次数

标签 统计

.net-6.0 ×1

blazor ×1

blazor-component ×1

c# ×1

components ×1