Component that loading Router is rendering outside router-outlet app.component.ts
@Component({
selector : "body",
template : `<router-outlet></router-outlet>`,
directives: [ROUTER_DIRECTIVES]
})
@RouteConfig([
{path: "/auth/login", name: "Auth", component: AuthComponent},
{path: "/...", name: "Default", component: DefaultComponent}
])
export class AppComponent {
constructor(private _router: Router) {
}
}
default.component.ts
@Component({
template : `
<header-view></header-view>
<router-outlet></router-outlet>
`,
directives: [HeaderComponent, ROUTER_DIRECTIVES]
})
@RouteConfig([
{path: "/", name: "LevelsList", component: LevelListComponent, useAsDefault: true}
])
export class DefaultComponent {
constructor(private _router: Router) {}
}
Console has no error. While inspecting an element I see that router-outlet is empty and component is rendering after it.
This is by design. There is a related open issue https://github.com/angular/angular/issues/8529 but I didn't get the impression this is something that is considered for being changed.