无法在客户端blazor中覆盖OnAfterRenderAsync

在我的Blazor客户端应用中,我试图使用

覆盖OnAfterRenderAsync
@code {
    protected override async Task OnAfterRenderAsync()
    {

    }
}

我收到错误

  

没有合适的方法可以覆盖!?

另一方面,此覆盖效果很好:

protected override async Task OnInitializedAsync()
{

}

任何线索,这是怎么了?

sha00000000 回答:无法在客户端blazor中覆盖OnAfterRenderAsync

引用ASP.NET Core and Blazor updates in .NET Core 3.0 Preview 9升级现有项目

  
      
  • OnAfterRender()OnAfterRenderAsync()替换OnAfterRender(bool firstRender)OnAfterRenderAsync(bool firstRender)的实现。
  •   

由于NET Core 3.0预览版9 OnAfterRender收到一个布尔参数,以使方法知道这是否是第一个渲染。避免自己控制它非常有用:

Git hub code upgrading to preview 9

有关如何将旧代码替换为新代码,红色旧代码,绿色新代码的示例。

,

尝试

@code {
    protected override async Task OnAfterRenderAsync(bool firstRender)
    {

    }
}

请注意,OnAfterRenderAsync和OnAfterRender都具有布尔参数,您可以调用firstRender

 protected override async Task OnInitializedAsync()
    {

    }

实际上,应该没有问题,因为这是OnInitializedAsync的正确方法签名

本文链接:https://www.f2er.com/3142600.html

大家都在问