【发布时间】:2020-06-16 10:03:05
【问题描述】:
我有一个带有列表和编辑页面的 Blazor WebAssembly 应用程序。
当我查看实体列表并单击其中一个进行编辑时,使用 NavLink 组件,浏览器导航到编辑页面,显示我的加载器组件,直到页面加载。
效果很好。
当我在编辑页面上单击保存时,如果成功,我会导航回我的列表页面。
private async Task OnValidSubmitAsync()
{
this.IsBusy = true;
var @event =
await this.EventService.UpdateByIdAsync(
this.Id,
this.EventUpdateOptions);
this.IsBusy = false;
this.NavigationManager.NavigateTo($"/teams/{this.Event.Team.Id}/events");
}
我希望它会导航到 List 页面,再次显示我的 Loader 组件,然后呈现 List 页面。
但是会发生什么,它会一直停留在编辑页面上,直到呈现列表页面,我从来没有看到我的加载器组件,并且它对用户来说,看起来就像它只是挂在编辑页面上。
解决方法是在我保存完实体后在OnValidateSubmitAsync 中显示我的加载程序。
我是 Blazor 的新手,页面生命周期仍在下降,因此我的方法可能不正确。只是对这里发生的事情有点困惑,以及是否有办法强制列表页面与加载器一起显示。
希望这有点道理。 ????
【问题讨论】: