0

1 つのログイン コンポーネントとホーム モジュールを持つアプリケーションがあります。ホームモジュール内にAuxルートを持たせたいです。

ユーザーがログインするとすぐに、ホーム ルートにリダイレクトされます。

これは私の app-routing.module です

const routes: Routes = [
  {
    path: 'login',
    component: LoginComponent
  },
  {
    path: '',
    redirectTo: 'home',
    pathMatch: 'full'
  }
];

@NgModule({
 imports: [RouterModule.forRoot(routes)],
 exports: [RouterModule]
})
export class AppRoutingModule { }

以下は私の home-routing.module.ts です

const routes: Routes = [
    {
        path: 'home',
        children: [
            {
                path: '',
                component: HomeComponent,
                canActivate: [CanActivateGuard]
            },
            {
                path: '',
                outlet: 'aux',
                component: DashboardComponent,
                canActivate: [CanActivateGuard]
            }
        ]
    }
];

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

私の予想では、アプリがホーム ルートにリダイレクトされると、this.router.navigate(['/home']);HomeComponent がレンダリングされ (現在レンダリングされています)、DashboardComponent がレンダリングされます (レンダリングされません)。

「ダッシュボード」への補助ルート内でレンダリングする必要があるコンポーネントへのパスを提供したり、ホームコンポーネントの ngOnInit メソッドからダッシュボードルートにリダイレクトしようとしたりするなど、あらゆる種類のハックを試しましたthis.router.navigate([{ outlets: { aux: 'dashboard' }}]);

しかし、注意はうまくいくようです。私が間違っているのは何ですか?

4

1 に答える 1