Blazor 布局标记未正确呈现页面

Blazor layout tag not rendering page correctly

我正在使用 Blazor/razor 创建一个网站,其中登录页面的布局与我的默认布局不同。我知道我必须使用页面顶部的@layout 标记来指定我使用的是不同的布局,但问题是当页面打开时,似乎之前一瞬间使用了默认布局它更改为使用我指定的布局。关于如何阻止这种情况发生的任何建议?

问题是 await base.OnInitializedAsync() 的调用顺序不正确。在我的 MainLayout.razor 文件中,有一个包含上述 await 调用的 OnInitializedAsync 方法。我还有一些逻辑检查用户是否已通过身份验证以使用该网站(已登录),如果没有则重定向到登录页面。通过确保 await base.OnInitializedAsync() 调用在该逻辑之后,页面在加载“覆盖”布局之前停止呈现不正确的布局。据我所知,这是因为 await 调用包含与布局有关的 base 关键字,因此在我的重定向逻辑初始化页面之前进行此调用并在任何之前呈现页面的默认布局逻辑已完成。