У меня есть несколько маршрутов, которые загружаются из внешнего модуля (вход в систему, обратный вызов, несанкционированный доступ и т. Д.), И иногда приложению требуется 2-3 секунды, чтобы перейти к маршруту.Пока он ожидает маршрутизации на страницу навигации, экран пуст, за исключением навигационной панели вверху.Я хотел бы добавить сообщение о загрузке во время маршрутизации.Я нашел способ, подписавшись на router.events
Observable:
ngAfterViewInit() {
this._router.events.subscribe(event => {
if (event instanceof NavigationStart) {
this.routeLoading = true;
} else if (event instanceof NavigationEnd || event instanceof NavigationCancel) {
this.routeLoading = false;
}
});
}
Но на самом деле я хотел бы сделать это, только если навигация занимает, например, более полсекунды.Многие маршруты, после того как мы вошли в систему, в основном мгновенные, и в этих случаях я не хочу, чтобы загрузчик мигал на экране.
Есть ли способ сделать это?Я думаю, что-то вроде использования оператора pipe
, и оператор debounceTime
может работать, но я не совсем уверен.У кого-нибудь есть идеи?