Angular 子模块中的 6 routerlink 和父模块中的 router-outlet (app.component)

Angular 6 routerlink in child module and router-outlet in parent (app.component)

我正在使用 RouterModule,但是 routerLinks 有问题。

routerLinks 不起作用(锚不可点击),因为它们在子模块中,我不知道如何解决这个问题。

层次结构:

App.Module (router-outlet) -> 元素模块 -> Navi 模块 (routerLinks)

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { HttpClientModule } from '@angular/common/http';
import { ElementsModule } from './elements/elements.module';

import { LandingComponent } from './pages/landing.component';
import { GenreComponent } from './pages/genre.component';
import { SinglePostComponent } from './pages/singlepost.component';
import { ListComponent } from './pages/list.component';
import { AppComponent } from './app.component';

import { DataService } from './data.service';

@NgModule({
    imports: [
        BrowserModule,
        ElementsModule,
        HttpClientModule,
        RouterModule.forRoot([
            {path: "", component: LandingComponent},
            {path: "post/:id", component: SinglePostComponent},
            {path: "lists", component: ListComponent}
        ], {
            useHash: true,
        })
    ],
    declarations: [
        AppComponent,
        LandingComponent,
        GenreComponent,
        SinglePostComponent,
        ListComponent
    ],
    providers: [DataService],
    bootstrap: [AppComponent]
})
export class AppModule { }

app.component.html

<router-outlet></router-outlet>

navi.componentent.html

<a routerLink="/movies">Movies</a>

在我的项目中,我有一个模块指定用于处理路由,我的其他模块可以导入:

应用-routing.module.ts:

import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';

import { MainComponent } from './main/main.component';

const routes: Routes = [
  {
    path: '',
    component: MainComponent
  }
];

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

这是由我的其他模块导入的,例如:

@NgModule({
  declarations: [
    AppComponent,
    MainComponent
  ],
  imports: [
    AppRoutingModule
  ]
})
export class AppModule {}