当我尝试向我的应用程序添加辅助路径以显示弹出窗口和向导时,我在获取角度以实际识别我的命名router-outlet
标记时遇到了一些麻烦。我把它放在不被路由到的组件内,而是放在路由到组件内部。每当我尝试导航到正确的路线时,我都会收到类似Cannot find router outlet popup...
的消息,我将router-outlet
移动到组件层次结构中的某个级别,突然之间一切正常。
所以问题是,angular如何解析组件树以查找router-outlet
标签以添加组件?
答案 0 :(得分:0)
路由器插座在创建父级RouterOutletMap
(parentOutletMap
)时自行注册
@Directive({selector: 'router-outlet'})
export class RouterOutlet implements OnDestroy {
...
constructor(
private parentOutletMap: RouterOutletMap, private location: ViewContainerRef,
private resolver: ComponentFactoryResolver, @Attribute('name') private name: string) {
parentOutletMap.registerOutlet(name ? name : PRIMARY_OUTLET, this);
}