假设我想知道我的所有组件何时加载,以便我可以执行 X 操作。
在我的MainLayout.razor例子中我有这个
@inject MyService;
@Body
bool AllComponentsAreLoaded { get; set; }
protected override async Task OnInitializedAsync()
{
AllComponentsAreLoaded = false;
}
protected override async Task OnAfterRenderAsync(bool firstrender)
{
AllComponentsAreLoaded = true;
if (AllComponentsAreLoaded)
{
// Nice I can start X
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码可以工作,但我的问题是其中有一些组件@Body未加载。将会OnAfterRenderAsync触发,但它会在所有组件完成渲染之前触发。
我如何知道所有组件都已完成渲染?