#angular #angular-routing
#angular #angular-маршрутизация
Вопрос:
Я использовал два выхода маршрутизатора в компоненте. Навигация для маршрутизации у меня работает нормально. Но я хочу правильно указать путь маршрутизации. Теперь я сталкиваюсь с неожиданным путем маршрутизации.
Ниже приведен мой app.component.html
<h2>Details </h2>
<ul>
<li>
<a [routerLink]="[{ outlets: { chart: 'line',range: 'line' } }]"> Line </a>
</li>
<li>
<a [routerLink]="[{ outlets: { chart: ['area'], range: ['area'] } }]">Area</a>
</li>
</ul>
<div class="row">
<div class="column">
<router-outlet name='chart'></router-outlet>
</div>
<div class="column">
<router-outlet name="range"></router-outlet>
</div>
</div>
Теперь я получаю путь маршрутизации как http://localhost:4200 /(диаграмма:линия//диапазон:линия). Но мне нужен путь маршрутизации как
http://localhost:4200/line .
Я использовал следующие маршруты в своем приложении-routing.module.ts
const routes: Routes = [
{
path: 'line',
component: LineChartComponent,
outlet: 'chart'
},
{
path: 'line',
component: LineRangeComponent,
outlet: 'range'
},
{
path: 'area',
component: AreaChartComponent,
outlet: 'chart'
},
{
path: 'area',
component: AreaRangeComponent,
outlet: 'range'
}
];
Кто-нибудь может подсказать мне, как я могу достичь ожидаемого пути маршрутизации?
Заранее спасибо.
Ответ №1:
Я рекомендую вам объединить 2 розетки в 1. И создайте компонент-оболочку, содержащий оба компонента (диапазон и диаграмму), и используйте этот компонент-оболочку в конфигурации маршрутизатора вместо этого.
Комментарии:
1. Ваше предложение отлично работает для меня. Есть ли какой-либо способ добиться этого с помощью отдельных компонентов?