无法在客户端 blazor 中覆盖 OnAfterRenderAsync
Unable to override OnAfterRenderAsync in client side blazor
在我的 Blazor 客户端应用程序中,我尝试使用
覆盖 OnAfterRenderAsync
@code {
protected override async Task OnAfterRenderAsync()
{
}
}
我收到一个错误
no suitable methods to override!?
另一方面,这个覆盖工作得很好:
protected override async Task OnInitializedAsync()
{
}
有什么线索吗?
试试这个
@code {
protected override async Task OnAfterRenderAsync(bool firstRender)
{
}
}
请注意,OnAfterRenderAsync 和 OnAfterRender 都有一个布尔参数,您可以调用 firstRender
protected override async Task OnInitializedAsync()
{
}
的确,这应该没有问题,因为这是 OnInitializedAsync 的正确方法签名
引用ASP.NET Core and Blazor updates in .NET Core 3.0 Preview 9的升级现有项目:
- Replace
OnAfterRender()
and OnAfterRenderAsync()
implementations with OnAfterRender(bool firstRender)
or OnAfterRenderAsync(bool firstRender)
.
自 NET Core 3.0 预览版 9 OnAfterRender
接收一个布尔参数,让方法知道这是否是第一次渲染。非常有用,避免自己控制它:
关于如何将旧代码替换为新代码的示例,红色旧代码,绿色新代码。
在我的 Blazor 客户端应用程序中,我尝试使用
覆盖OnAfterRenderAsync
@code {
protected override async Task OnAfterRenderAsync()
{
}
}
我收到一个错误
no suitable methods to override!?
另一方面,这个覆盖工作得很好:
protected override async Task OnInitializedAsync()
{
}
有什么线索吗?
试试这个
@code {
protected override async Task OnAfterRenderAsync(bool firstRender)
{
}
}
请注意,OnAfterRenderAsync 和 OnAfterRender 都有一个布尔参数,您可以调用 firstRender
protected override async Task OnInitializedAsync()
{
}
的确,这应该没有问题,因为这是 OnInitializedAsync 的正确方法签名
引用ASP.NET Core and Blazor updates in .NET Core 3.0 Preview 9的升级现有项目:
- Replace
OnAfterRender()
andOnAfterRenderAsync()
implementations withOnAfterRender(bool firstRender)
orOnAfterRenderAsync(bool firstRender)
.
自 NET Core 3.0 预览版 9 OnAfterRender
接收一个布尔参数,让方法知道这是否是第一次渲染。非常有用,避免自己控制它:
关于如何将旧代码替换为新代码的示例,红色旧代码,绿色新代码。