我有一个父组件和一个具有事件回调的子组件,在其中我希望它传回一种类型的T。
我遇到的问题是我在转换
MethodGroup to EventCallback。
如果我将它转换为使用Action,那么它就能工作,但我不能这样做,这并不理想。
知道我做错什么了吗?
父级
<Child DeleteCallback="@OnDelete"></Child>
public async Task OnDelete(T item)
{ ... }孩子
@typeparam T
[Parameter]
public EventCallback<T> DeleteCallback { get; set; }
<a @onclick="() => DeleteCallback.InvokeAsync(item)"></a>我在这里加了一个回购表来解释这个问题。看看Blazor的问题,这个问题应该是在2019年修复的。https://github.com/scott-david-walker/EventCallbackError
发布于 2020-10-11 21:36:31
你们很亲密:
<ChildComponent Item="someModel" T="SomeModel" DeleteCallback="OnDeleteSomeModel" />
@code {
SomeModel someModel = new SomeModel();
void OnDeleteSomeModel(SomeModel someModel)
{
...
}
}EventCallback使用泛型类型,如果不将该类型传递给组件,则blazor无法推断该类型。
这意味着,如果您有一个EventCallback<T>,您需要将T的值传递给组件,例如T="SomeType"。
发布于 2021-01-22 09:00:47
在我的例子中,我声明了一个可为空的EventCallback? --您不能这样做。
发布于 2021-01-27 07:57:42
我已经经历了语法上的问题,但仍然会出现这个错误。
重新启动Visual 2019为我解决了这个问题。仅仅清洁和重建是不够的。
https://stackoverflow.com/questions/64308947
复制相似问题