У меня есть шаблон url в том же месте, но он заканчивается разными данными.
Пример:
Имейте в виду, что "детализация" и "объект" являются динамическими, Пример: detail1-category, detail2-category, detail3-category, object1, object2, objectt3.
URL1 = /url/detail-category
URL2 = /url/object
Мне нужно загрузитьChildren на основе того, заканчивается ли URL-адрес с "-категорией" или нет, я использую совпадение, но я теряю переменную "путь", так как совпадение и путь не могут использоваться на в то же время.
Оригинал:
{ path: 'url/:id',
loadChildren: './modules/child.module#ChildModule'
},
Обновлено:
{ matcher: categoriesMatcher,
loadChildren: './modules/child.module#ChildModule'
},export function categoriesMatcher(url: UrlSegment[]) {
return url.length === 1 && url[0].path.endsWith('-category') ? ({consumed: url, path: url}) : null;
}
// вышеприведенное отсюда , и он работает, но мы теряем данные, которые диктуют поведение компонента. Угловые 2 разных компонента с одним и тем же маршрутом
Матчи могут предоставлять параметры как часть логики соответствия. Возвращаемое значение должно содержать свойство
posParam
со значениями каждого параметра маршрута.Например:
Код для примера выше скопировано здесь:
https://gist.github.com/anein/fba647b4206695d109c30e1fc0d2e8ee