Почему использование 'matcher' в определении углового маршрута вместо 'path' приводит к ошибке в библиотеке ngx-translate? - PullRequest
0 голосов
/ 03 февраля 2019

Я использую localize-router в своем приложении Angular для установки текущего языка в URL.

Все работает отлично, если я настраиваю маршруты приложения с помощью клавиши path...

Но мне нужно было использовать клавишу matcher для решения чувствительного к регистру поведения URL, также я использую клавишу data, чтобы установить некоторые параметры, которые могут мне понадобиться ...

Теперь проблема возникает сейчас, когда я пытаюсь изменить текущий язык, после того, как я попробовал на ошибку, я понимаю, что библиотека localize-router зависит только от клавиши path, чтобы извлечь некоторыенеобходимые данные.

import { Routes, RouterModule } from '@angular/router';
import { LocalizeRouterModule } from 'localize-router';
import { CaseInsensitiveMatcher } from '....';

export function BasePersonMatch() {
  return CaseInsensitiveMatcher('PersonManagement').apply(this, arguments);
}

export function AddPersonMatch() {
  return CaseInsensitiveMatcher('Add').apply(this, arguments);
}

const routes: Routes = [
  {
    matcher: BasePersonMatch, // this break changing the language
    //  path: 'PersonManagement', // when use this it's working fine
    component: PersonManagementComponent,
    canActivate: [AuthenticatedGuard],
    canActivateChild: [AuthenticatedGuard],
    data: {
      authClient: AuthClients.FES
    },

    children: [
      { path: '', pathMatch: 'full', redirectTo: 'List' },
      {
        matcher: AddPersonMatch,
        component: AddPersonComponent
      },

      {
        matcher: PersonListMatch,
        component: PersonListComponent
      }
    ]
  }
];


@NgModule({
  imports: [
    RouterModule.forChild(routes),
    LocalizeRouterModule.forChild(routes)
  ],
  exports: [RouterModule]
})
export class PersonManagementRoutingModule { }

Я не уверен, что выйдет новый выпуск из библиотеки localize-router, который прекрасно работает с matcher, поэтому какая-нибудь помощь, как решить это сейчас?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...