【发布时间】:2020-11-15 03:19:19
【问题描述】:
我在我的 Angular 项目中创建了一个路由解析器。我还在我的应用程序组件中实现了加载 gif。当我从一条路线导航到另一条路线时,加载工作正常。但是,如果我重新加载页面或按 f5,那么页面会在一段时间内变为空白(白色)。解析器获取数据后页面再次显示。
问题-如何在我刷新页面时显示相同的加载器?
应用组件 HTML
<div *ngIf="isLoading == true">
<div class="loader">
<img src="./assets/images/loader.gif" alt="" />
</div>
</div>
<!-- while route is completed ajax calls -->
<div *ngIf="isLoading == false">
<router-outlet></router-outlet>
</div>
应用程序组件
public isLoading = false;
constructor(private router: Router) {
this.router.events.subscribe((event: RouterEvent) => {
switch (true) {
case event instanceof NavigationStart: {
this.isLoading = true;
break;
}
case event instanceof NavigationEnd:
case event instanceof NavigationCancel:
case event instanceof NavigationError: {
this.isLoading = false;
break;
}
default: {
break;
}
}
});
}
【问题讨论】:
标签: angular