我正在尝试为我的所有应用程序使用通用解析器。
在根目录中,我没有组件,我只是根据路径加载一个子目录。 我输入了一个解析器,但我的应用程序没有调用它:
{ path: '', resolve: { data: AppResolver }, canActivate: [LoggedInGuard], children: [ { path: '', redirectTo: '/mainView', pathMatch: 'full' }, { path: 'menu1', loadChildren: 'app/menu1/menu1.module#Menu1Module' }, { path: 'menu2', loadChildren: 'app/menu2/menu2.module#Menu2Module' } ] }, {path: '**', redirectTo: ''} ];
我看到Approver从未参与,我的应用程序中是否有任何错误。路由文件?
每个路由都需要自己的解析器。因此,您可以通过这种方式复制逻辑以满足您的需求。下面是示例代码。
const viewRouteResolver = { data: AppResolver }; { path: ââ, resolve: viewRouteResolver, canActivate: [LoggedInGuard], children: [ { path: ââ, redirectTo: â/mainViewâ, pathMatch: âfullâ, resolver: viewRouteResolver }, { path: âmenu1â, loadChildren: âapp/menu/menu1.module#Menu1Moduleâ, resolve: viewRouteResolver } ] }
因此,由于路径匹配,路由被激活,解析器将被触发。