Angular ng2路由解析程序的进度加载程序
我正在使用路由解析程序,如:Angular ng2路由解析程序的进度加载程序,angular,angular2-routing,Angular,Angular2 Routing,我正在使用路由解析程序,如: routes.push({ path: '', component: MainComponent, children: [ {path: 'config', component: ConfigurationWizardComponent, resolve: { settings: SettingsResolver }}, {path: 'jobs', children: [ {path: '', component
routes.push({
path: '', component: MainComponent, children: [
{path: 'config', component: ConfigurationWizardComponent, resolve: { settings: SettingsResolver }},
{path: 'jobs', children: [
{path: '', component: JobsOverviewComponent, resolve: { settings: NoFallbackSettingsResolver }},
{path: 'add', component: JobFormComponent, resolve: { databases: DatabaseResolver }},
]},
{path: '', redirectTo: '/jobs', pathMatch: 'full'},
],
});
但是,由于解析程序需要一段时间才能完成,因此在解析程序完成之前,应用程序似乎什么都没有做
在执行路由解析程序时,是否可以向用户提供任何类型的视觉反馈?我也有这个问题。如果您计划使用一个不显示任何进度的简单加载程序(例如,一个简单的微调加载程序),您可以做的是订阅路由器的事件并显示和隐藏加载程序
constructor(private router: Router) {
router.events
.filter(event => event instanceof NavigationStart)
.subscribe(() => { // show the progress bar });
router.events
.filter(event => event instanceof NavigationEnd)
.subscribe(() => { // complete the progress bar })
}
但是,如果您计划在加载过程中显示任何进度(如顶部的Youtube进度条),我仍然不知道如何实现