Модуль маршрутизации и не найденный шаблон - PullRequest
0 голосов
/ 31 мая 2018

У меня есть следующие настройки маршрутизации:

app-routing

const routes: Routes = [
  {
    path: 'login',
    loadChildren: 'app/modules/auth/auth.module#AuthModule'
  },
  {
    path: '',
    redirectTo: 'dashboard',
    pathMatch: 'full'
  },
  {
    path: 'dashboard',
    loadChildren: 'app/modules/dashboard/dashboard.module#DashboardModule',
    canActivate: [AuthenticationGuard]
  },
  {
    path: 'yards',
    loadChildren: 'app/modules/yards/yards.module#YardsModule',
    canActivate: [AuthenticationGuard]
  },
  {
    path: 'inspections',
    loadChildren: 'app/modules/inspections/inspections.module#InspectionsModule'
  },
  {
    path: 'settings',
    loadChildren: 'app/modules/settings/settings.module#SettingsModule'
  },
  {
    path: 'notfound',
    loadChildren: 'app/modules/errors/errors.module#ErrorsModule'
  },
  {
    path: '**',
    redirectTo: 'notfound'
  }
];

ярдов-маршрутизация

const routes: Routes = [
  { path: '', component: YardListComponent},
  { path: 'yards/new', component: YardEditComponent},
  { path: 'yards/:id', component: YardDetailComponent},
  { path: 'yards/:id/edit', component: YardEditComponent},
];

В настоящее время, если я броузер URL-адрес не делает 't существует на верхнем уровне, я получаю не найденную страницу.Но когда я также получаю не найденную страницу, когда хочу перейти на ЛЮБУЮ подстраницу, например: ярды / 1 или ярды / новые

Как настроить маршрут так, чтобы я мог просматривать подстраницы, нотакже есть страница not found, работающая для всех уровней?

1 Ответ

0 голосов
/ 05 июня 2018

Вам нужно иметь дочерние маршруты перед вашим подстановочным знаком.Например, у меня есть основной раздел маршрутов, где у вас есть свой «верхний уровень», а затем второй набор маршрутов под страницами, на которые вы помещаете страницы своих ярдов.

export const AppRoutes: Routes = [{
        path: '',
        redirectTo: 'home',
        pathMatch: 'full',
    },
      {
        path: '',
        component: AdminLayoutComponent,
        children: [{
                path: 'home',
                loadChildren: './dashboard/dashboard.module#DashboardModule'
            },{
            //     path: 'runs',
            //     loadChildren: './tables/tables.module#TablesModule'
            // },{
                path: 'calendar',
                loadChildren: './calendar/calendar.module#CalendarModule'
            },{
                path: '',
                loadChildren: './userpage/user.module#UserModule'
            },
            {
                path: 'analytics',
                // component: StatsComponent
                component: Analytics

            }]
        },
        {
          path: 'forbidden',
          // component: StatsComponent
          component: ForbiddenComponent
        },
        {
            path: '',
            component: AuthLayoutComponent,
            children: [{
                path: 'pages',
                loadChildren: './pages/pages.module#PagesModule'
            }]
        },{
            path: '**',
            redirectTo: '/home',
            pathMatch: 'full'
          }
];
...