Как создать вложенную структуру маршрута, используя отдельные файлы routing.module.ts для каждого подмодуля
У меня есть приложение, которое имеет структуру маршрутизации следующим образом
const routes: Routes = [
{
path: 'users/:userId/product/:productId',
component: AppComponent,
data: { animation: 'app' },
children: [
{
path: 'grouping',
component: GroupingComponent,
children: [
{
path: 'overview',
component: OverviewComponent,
data: { animation: 'overview' }
},
{
path: 'configuration',
component: GroupConfigurationComponent,
data: { animation: 'configuration' }
}
]
}
]
},
{
path: 'grouping',
redirectTo: 'users/:userId/product/:productId/grouping/overview',
pathMatch: 'full'
}
];
У меня есть розетка маршрутизатора, вложенная в основную розетку маршрутизатора. Он отображает дочерние маршруты компонента группировки.
Как мне создать эту вложенную структуру маршрутов, используя отдельные файлы routing.module.ts для каждого подмодуля? (У меня есть GroupingModule
1 ответ
Я опубликую свой пример:
маршрутизация приложений
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { AppComponent } from './app.component';
const routes: Routes = [
{
path: ':type/firstPage.html',
pathMatch: 'full',
redirectTo: ':type/firstPage-1' // for my redirect
}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
пример дочернего файла маршрутизации
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { YourComponent } from './components/yourComponent.component';
const routes: Routes = [
{
path: ':type/firstPage-1', // the route where i redirect first
component: YourComponent
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class YourComponentRoutingModule { }
Для модулей вы поместите ваш конкретный компонент routing.ts файл в его модуль, а затем вам придется импортировать этот конкретный модуль в app.module.
надеюсь, это помогло