diff --git a/npm/ng-packs/packages/account/src/lib/account-routing.module.ts b/npm/ng-packs/packages/account/src/lib/account-routing.module.ts
index 016666ccaf..c09dede3cb 100644
--- a/npm/ng-packs/packages/account/src/lib/account-routing.module.ts
+++ b/npm/ng-packs/packages/account/src/lib/account-routing.module.ts
@@ -1,8 +1,8 @@
import {
AuthGuard,
- DynamicLayoutComponent,
ReplaceableComponents,
ReplaceableRouteContainerComponent,
+ RouterOutletComponent,
} from '@abp/ng.core';
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
@@ -18,7 +18,7 @@ const routes: Routes = [
{ path: '', pathMatch: 'full', redirectTo: 'login' },
{
path: '',
- component: DynamicLayoutComponent,
+ component: RouterOutletComponent,
children: [
{
path: 'login',
diff --git a/npm/ng-packs/packages/core/src/lib/components/dynamic-layout.component.ts b/npm/ng-packs/packages/core/src/lib/components/dynamic-layout.component.ts
index 939fff173e..61846ad126 100644
--- a/npm/ng-packs/packages/core/src/lib/components/dynamic-layout.component.ts
+++ b/npm/ng-packs/packages/core/src/lib/components/dynamic-layout.component.ts
@@ -1,4 +1,4 @@
-import { Component, Injector, Optional, SkipSelf, Type } from '@angular/core';
+import { Component, Injector, isDevMode, Optional, SkipSelf, Type } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { eLayoutType } from '../enums/common';
import { ABP } from '../models';
@@ -13,13 +13,7 @@ import { TreeNode } from '../utils/tree-utils';
@Component({
selector: 'abp-dynamic-layout',
- template: `
-
-
-
- `,
+ template: ` `,
providers: [SubscriptionService],
})
export class DynamicLayoutComponent {
@@ -47,7 +41,10 @@ export class DynamicLayoutComponent {
private routerEvents: RouterEvents,
@Optional() @SkipSelf() dynamicLayoutComponent: DynamicLayoutComponent,
) {
- if (dynamicLayoutComponent) return;
+ if (dynamicLayoutComponent) {
+ if (isDevMode) console.warn('DynamicLayoutComponent must be used only in AppComponent.');
+ return;
+ }
this.route = injector.get(ActivatedRoute);
this.router = injector.get(Router);
this.routes = injector.get(RoutesService);
diff --git a/npm/ng-packs/packages/identity/src/lib/identity-routing.module.ts b/npm/ng-packs/packages/identity/src/lib/identity-routing.module.ts
index 3b290e851b..790d5fe688 100644
--- a/npm/ng-packs/packages/identity/src/lib/identity-routing.module.ts
+++ b/npm/ng-packs/packages/identity/src/lib/identity-routing.module.ts
@@ -1,9 +1,7 @@
import {
- AuthGuard,
- DynamicLayoutComponent,
- PermissionGuard,
+ AuthGuard, PermissionGuard,
ReplaceableComponents,
- ReplaceableRouteContainerComponent,
+ ReplaceableRouteContainerComponent, RouterOutletComponent
} from '@abp/ng.core';
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
@@ -16,7 +14,7 @@ const routes: Routes = [
{ path: '', redirectTo: 'roles', pathMatch: 'full' },
{
path: '',
- component: DynamicLayoutComponent,
+ component: RouterOutletComponent,
canActivate: [AuthGuard, PermissionGuard, IdentityExtensionsGuard],
children: [
{
diff --git a/npm/ng-packs/packages/setting-management/src/lib/setting-management-routing.module.ts b/npm/ng-packs/packages/setting-management/src/lib/setting-management-routing.module.ts
index 55a056c411..ea16e33286 100644
--- a/npm/ng-packs/packages/setting-management/src/lib/setting-management-routing.module.ts
+++ b/npm/ng-packs/packages/setting-management/src/lib/setting-management-routing.module.ts
@@ -1,8 +1,8 @@
import {
- DynamicLayoutComponent,
+ AuthGuard,
ReplaceableComponents,
ReplaceableRouteContainerComponent,
- AuthGuard,
+ RouterOutletComponent,
} from '@abp/ng.core';
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
@@ -12,7 +12,7 @@ import { eSettingManagementComponents } from './enums/components';
const routes: Routes = [
{
path: '',
- component: DynamicLayoutComponent,
+ component: RouterOutletComponent,
canActivate: [AuthGuard],
children: [
{
diff --git a/npm/ng-packs/packages/tenant-management/src/lib/tenant-management-routing.module.ts b/npm/ng-packs/packages/tenant-management/src/lib/tenant-management-routing.module.ts
index 65666ea5a9..f2b7180c1e 100644
--- a/npm/ng-packs/packages/tenant-management/src/lib/tenant-management-routing.module.ts
+++ b/npm/ng-packs/packages/tenant-management/src/lib/tenant-management-routing.module.ts
@@ -1,9 +1,9 @@
import {
AuthGuard,
- DynamicLayoutComponent,
PermissionGuard,
ReplaceableComponents,
ReplaceableRouteContainerComponent,
+ RouterOutletComponent,
} from '@abp/ng.core';
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
@@ -15,7 +15,7 @@ const routes: Routes = [
{ path: '', redirectTo: 'tenants', pathMatch: 'full' },
{
path: '',
- component: DynamicLayoutComponent,
+ component: RouterOutletComponent,
canActivate: [AuthGuard, PermissionGuard, TenantManagementExtensionsGuard],
children: [
{