Я собираюсь задать вопрос, который я видел много раз, и я много искал об этом, кажется, что у всех одна и та же проблема, но никто не решается одинаково.
Я делаю привет, мир с Angular, и я на стороне маршрутизации. Я сгенерировал файл, как говорится в документах фреймворка, но когда я начинаю открывать приложение в навигаторе, он переходит к следующей ошибке:
Error: StaticInjectorError(AppModule)[RouterOutlet -> ChildrenOutletContexts]:
StaticInjectorError(Platform: core)[RouterOutlet -> ChildrenOutletContexts]:
NullInjectorError: No provider for ChildrenOutletContexts!
Я следил за учебником с самого начала несколько раз, я искал решения и ничего. Чтобы узнать, может ли кто-нибудь мне помочь, я покажу вам свой код, как сейчас:
Это файл app-routing.module.ts:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { HelloWorldComponent } from './hello-world/hello-
world.component';
const routes: Routes = [
{
path: '',
component: HelloWorldComponent,
},
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule],
declarations: []
})
export class AppRoutingModule { }
это файл app.modules:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { MatButtonModule, MatDialogModule, MatTableModule,MatFormFieldModule, MatInputModule } from '@angular/material';
import { FormsModule } from '@angular/forms';
import { RouterModule, Routes } from '@angular/router';
import { AppComponent } from './app.component';
import { UserCardComponent, DialogExampleComponent} from './usercard/user-card.component';
import { BrowserAnimationsModule } from '@angular/platformbrowser/animations';
import { HelloWorldComponent } from './hello-world/helloworld.component';
@NgModule({
declarations: [
AppComponent,
UserCardComponent,
DialogExampleComponent,
HelloWorldComponent
],
entryComponents:[DialogExampleComponent],
imports: [
BrowserModule,
MatTableModule,
MatButtonModule,
MatDialogModule,
BrowserAnimationsModule,
MatFormFieldModule,
MatInputModule,
FormsModule,
RouterModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
И я не думаю, что это нужно, но это файл app.component.html:
<router-outlet></router-outlet>
Может кто видит проблему?? Может быть, я слепой...
Поскольку вы уже настроили маршрутизацию в своем AppRoutingModule
, а также экспортировали RouterModule
AppRoutingModule
, это то, что вы должны добавить в массив imports
вашего AppModule
.
Измените это:
imports: [
...
RouterModule,
],
К этому:
imports: [
...
AppRoutingModule,
],