每次我尝试将一个组件导入另一个组件(它们不是同级组件)时,我都会在控制台上收到此错误:
...
ERROR Error: "StaticInjectorError(AppModule)[LogsTableComponent -> FilterBarComponent]:
StaticInjectorError(Platform: core)[LogsTableComponent -> FilterBarComponent]:
NullInjectorError: No provider for FilterBarComponent!"
...
这是我的app.module.ts文件:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { HttpClientModule } from '@angular/common/http';
import { AppComponent } from './app.component';
import { LogsTableComponent } from './components/logs-table/logs-
table.component';
import { FilterBarComponent } from './components/filter-bar/filter-
bar.component';
import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
import { HttpClientTestService } from './http-client-test.service';
@NgModule({
declarations: [
AppComponent,
FilterBarComponent,
LogsTableComponent,
],
imports: [
BrowserModule,
// HttpClientModule should be imported after BrowserModule.
HttpClientModule,
BsDatepickerModule.forRoot()
],
providers: [HttpClientTestService],
bootstrap: [AppComponent]
})
export class AppModule { }
任何人都可以帮助我知道为什么会发生此错误以及如何解决该错误。
答案 0 :(得分:1)
这可能是关键词:“没有为FilterBarComponent提供程序!” 。 我想,您应该将FilterBarComponent添加到“ AppModule”文件中的“ imports / providers(?)”数组中。
答案 1 :(得分:0)
您需要import
文件中的app.module.ts
FilterBarComponent,还需要在declaration
的{{1}}部分中添加FilterBarComponent才能使用该组件。