【发布时间】:2021-05-30 10:51:39
【问题描述】:
我看到越来越多的 OnInitialized 和 OnInitializedAsync() 返回 base.OnInitialized[Async] 的示例。但为什么?微软网站do not上的例子包括返回基方法
protected override Task OnInitializedAsync()
{
Contact = new();
return base.OnInitializedAsync();
}
【问题讨论】:
-
AFAIK,您可能需要调用基本实现的唯一可重写生命周期方法是 SetParametersAsync。否则,在继承时调用可覆盖方法的基本实现只是一个好习惯,即使您知道当前的基本实现什么都不做。如果您在 Blazor 基组件和派生组件之间插入了一个自定义基类(例如,一个可重用的组件基类,它在初始化时为您做一些常见的事情),那么您必须检查所有派生组件并添加 await base.OnInitializedAsync() 重用该行为。