Revert "feat(router): allow router outlet to be set on ng-container (#64562)" (#64584)

This reverts commit 2bd764a3c4.

PR Close #64584
This commit is contained in:
Kristiyan Kostadinov 2025-10-22 16:48:31 +02:00 committed by Jessica Janiuk
parent 99271bbeed
commit 9d48e534e2
3 changed files with 2 additions and 27 deletions

View file

@ -901,7 +901,7 @@ export class RouterOutlet implements OnDestroy, OnInit, RouterOutletContract {
readonly routerOutletData: i0.InputSignal<unknown>;
readonly supportsBindingToComponentInputs = true;
// (undocumented)
static ɵdir: i0.ɵɵDirectiveDeclaration<RouterOutlet, "router-outlet, ng-container[routerOutlet]", ["outlet"], { "name": { "alias": "name"; "required": false; }; "routerOutletData": { "alias": "routerOutletData"; "required": false; "isSignal": true; }; }, { "activateEvents": "activate"; "deactivateEvents": "deactivate"; "attachEvents": "attach"; "detachEvents": "detach"; }, never, never, true, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<RouterOutlet, "router-outlet", ["outlet"], { "name": { "alias": "name"; "required": false; }; "routerOutletData": { "alias": "routerOutletData"; "required": false; "isSignal": true; }; }, { "activateEvents": "activate"; "deactivateEvents": "deactivate"; "attachEvents": "attach"; "detachEvents": "detach"; }, never, never, true, never>;
// (undocumented)
static ɵfac: i0.ɵɵFactoryDeclaration<RouterOutlet, never>;
}

View file

@ -204,7 +204,7 @@ export interface RouterOutletContract {
* @publicApi
*/
@Directive({
selector: 'router-outlet, ng-container[routerOutlet]',
selector: 'router-outlet',
exportAs: 'outlet',
})
export class RouterOutlet implements OnDestroy, OnInit, RouterOutletContract {

View file

@ -194,31 +194,6 @@ describe('router outlet name', () => {
// Not contain because route was changed back to parent
expect(fixture.nativeElement.innerHTML).not.toContain('child component');
});
it('should be able to use a router outlet on an ng-container', async () => {
@Component({
template: '<ng-container routerOutlet [name]="name"/>',
imports: [RouterOutlet],
})
class RootCmp {
name = 'popup';
}
@Component({
template: 'popup component',
})
class PopupCmp {}
TestBed.configureTestingModule({
imports: [RouterModule.forRoot([{path: '', outlet: 'popup', component: PopupCmp}])],
});
const router = TestBed.inject(Router);
const fixture = await createRoot(router, RootCmp);
expect(fixture.nativeElement.innerHTML.trim()).toBe(
'<ng-component>popup component</ng-component><!--ng-container-->',
);
});
});
describe('component input binding', () => {