Динамическая маршрутизация меню с использованием Angular 7 - PullRequest
0 голосов
/ 18 марта 2019

Я пытаюсь создать динамическое меню и проложить маршрут от него к моему компоненту, но в подменю он имеет неправильный маршрут.под моим компонентом меню и подменю это работает хорошо.

   <ul class="sidebar-menu">
      <li class="dropdown" *ngFor="let item of navItems; let i = index;" >

        <a *ngIf="!item.children || item.children.length === 0" [routerLink]="item.route"
           class="nav-link"><i
          [class]="item.iconName"></i><span>{{item.displayName}}</span></a>

        <a *ngIf="item.children && item.children.length > 0"  class="nav-link has-dropdown" ><i
          [class]="item.iconName"></i><span>{{item.displayName}}</span></a>
          <ul menu-item #menu [items]="item.children" [perviouceURL]="item.route" class="dropdown-menu"></ul>

      </li>
    </ul>

и здесь я загружаю подменю

<li *ngFor="let child of items">
  <a *ngIf="!child.children || child.children.length === 0" [routerLink]="child.route" class="nav-link">
    {{child.displayName}}</a>

  <span *ngIf="child.children && child.children.length > 0">
       <a href="javascript:void(0)" class="nav-link has-dropdown"><i
         [class]="child.iconName"></i><span>{{child.displayName}}</span></a>
        <ul menu-item #menu [items]="child.children" class="dropdown-menu"></ul>
    </span>
</li>

, щелкаю по меню, оно правильное, но в подменю это маршрутнеправильно, например, если у него нет подменю, маршрут должен быть страницей / приборной панелью, если на приборной панели есть подменю, это должны быть страницы / приборная панель / подменю, но он отображается без приборной панели под маршрутом моих страниц

  {
    path: 'pages',
    component: PagesComponent,
    children: [
      {path: 'dashboard', loadChildren: './dashboard/dashboard.module#DashboardModule'},
      {path: 'other', loadChildren: './other/other.module#OtherComponentModule'},
      {path: 'newother', loadChildren: './newother/newother.module#NewOtherModule'},
      {path: '', redirectTo: 'dashboard', pathMatch: 'full'},
    ],
  }];

и вотПодменю my dashboard Маршруты

export const routes: Routes = [
  {
    path: '',
    component: DashboardComponent,
    children: [
      { path: 'generaldashboard', loadChildren:'./generalDashBoard/generalDashBoard.module#GeneralDashBoardModule'},
      { path: 'ecomerce',  loadChildren:'./Ecomerce/Ecomerce.module#EcomerceModule'},
      {path: '', redirectTo: 'generaldashboard', pathMatch: 'full'},
    ]
  }
];

Каковы оптимальные методы для получения правильного динамического маршрута без добавления ссылки на маршрутизатор, как это [routerLink] = "pages / item.route"

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