Я хотел бы начать все мои URL с языка, который соответствует массиву строк или регулярному выражению
const languages = ['nl', 'en', 'de', 'fr']
или const languageRegex = /(nl|en|de|fr)/g
мой routeConfig выглядит следующим образом
const appRoutes: Routes = [
{
path: '',
pathMatch: 'full',
redirectTo: 'en/configuration',
},
{
children: [
{ path: '', pathMatch: 'full', redirectTo: 'configuration' },
{
loadChildren:
'../modules/booking-flow/configuration.module#ConfigurationModule',
path: RouteHelper.paths.configuration,
},
{
loadChildren:
'../modules/booking-flow/personal-info.module#PersonalInfoModule',
path: RouteHelper.paths.personalInfo,
},
{
loadChildren:
'../modules/booking-flow/summary.module#SummaryModule',
path: RouteHelper.paths.summary,
},
{
loadChildren:
'../modules/booking-flow/payment-method.module#PaymentMethodModule',
path: RouteHelper.paths.paymentMethod,
},
{
loadChildren:
'../modules/booking-flow/confirmation.module#ConfirmationModule',
path: RouteHelper.paths.confirmation,
},
{
component: ErrorPageComponent,
path: RouteHelper.paths.errorNotFound,
},
{
path: '**',
pathMatch: 'full',
redirectTo: RouteHelper.paths.errorNotFound,
},
],
component: null,
path: ':language',
runGuardsAndResolvers: 'always',
},
];
Жаль, что это не работает, по моему мнению, это довольно удобочитаемая конфигурация:
path: ':language(/nl|en|de|fr/g)',
Я хотел бы получить следующий шаблон.
/
перенаправляет на /en/configuration
работает /nl
перенаправляет на /nl/configuration
работает /es
перенаправляет на 404
не делаетработа /es/configuration
перенаправляет на 404
не работает /en/invalid
перенаправляет на /en/404
работает