在Blazor中使用EventCallback的多个参数,而无需创建类并传递它



一年前,我创建了一个项目,我在这个问题的答案下面传递了多个参数:Blazor EventCallback与多个参数-如何响应父主机控制中的事件

当我现在在。net 6中尝试不工作(它正在创建一个类并将参数传递给那里的字段,但对我来说不是干净的解决方案)。

父组件:

<MultipleParamsComp OnHandle="@((args) => await HandleParams(((int, string))args))" />
<p>@BaseId</p>
<p>@BaseString</p>

@code {
private int BaseId = 0;
private string BaseString = string.Empty;

private async Task HandleParams((int, string) args)
{
BaseId = args.Item1;
BaseString = args.Item2;
}
}

子组件:

<h4>Child Component</h4>

<button class="btn btn-primary" @onclick="(() => HandleMultipleParams(id))">
Testing
</button>

@code {
private int id = 0;
private string Name = "something";
[Parameter]
public EventCallback<(int, string)> OnHandle { get; set; }
private async Task HandleMultipleParams(int customerId)
{
customerId++;
await OnHandle.InvokeAsync((customerId, Name));
}
}

项目文件行抑制状态错误CS1001标识符期望BlazorTheory E:ProgramareBlazorBlazorTheoryMicrosoft.NET.Sdk.Razor.SourceGeneratorsMicrosoft.NET.Sdk.Razor.SourceGenerators. razorsourcegenerator Theory_EventCallBack_Other_Examples_Passing_multiple_params_in_function_BaseComponent1_razor.g.cs 90 Active

项目文件行抑制状态错误CS0119 '字符串'是一种类型,在给定的上下文中无效BlazorTheory E:ProgramareBlazorBlazorTheoryMicrosoft.NET.Sdk.Razor.SourceGeneratorsMicrosoft.NET.Sdk.Razor.SourceGenerators. razorsourcegenerator Theory_EventCallBack_Other_Examples_Passing_multiple_params_in_function_BaseComponent1_razor.g.cs 90 Active

项目文件行抑制状态错误CS0119 'int'是一个类型,在给定的上下文中无效BlazorTheory E:ProgramareBlazorBlazorTheoryMicrosoft.NET.Sdk.Razor.SourceGeneratorsMicrosoft.NET.Sdk.Razor.SourceGenerators. razorsourcegenerator Theory_EventCallBack_Other_Examples_Passing_multiple_params_in_function_BaseComponent1_razor.g.cs 90 Active

项目文件行抑制状态错误CS0119 'EventCallback'是一种类型,在给定的上下文中无效BlazorTheory E:ProgramareBlazorBlazorTheoryMicrosoft.NET.Sdk.Razor.SourceGeneratorsMicrosoft.NET.Sdk.Razor.SourceGenerators. razorsourcegenerator Theory_EventCallBack_Other_Examples_Passing_multiple_params_in_function_BaseComponent1_razor.g.cs 90 Active


也许我缺乏一些委派或EventCallback的理论以及它们是如何在幕后工作的(任何好的文档链接都会有所帮助)。

泰u。

请看下面的问题-多参数的Blazor EventCallback -如何响应父主机控件中的事件

await NewDayScrolledIntoView.InvokeAsync((p1, p2, p3));
<ShiftCardScroller NewDayScrolledIntoView="@((args)=> NewDayInView(args.Item1,args.Item2,args.Item3))" />

相关内容

  • 没有找到相关文章

最新更新