我遇到了以下问题。我已经创建了一个服务-我们将其称为CopyService。我正在将Store注入其中。
@Injectable({
providedIn: 'root'
})
export class CopyService {
constructor(
private copyStore: Store<fromCopyStore.CopyState>,
) {
//something going on with the store
}
}
此外,我将CopyService注入MenuService
@Injectable({
providedIn: 'root'
})
export class MenuService {
constructor(private copyService: CopyService) {
// something going on with the copyService
}
}
最后,MenuService被注入到组件中:
export class Component implements OnInit {
constructor(
private store: Store<fromRoot.State>,
private menuService: MenuService,
) {
}
ngOnInit() {
// something going on with the menuService
}
}
仅对实际代码的草稿表示歉意,但是我不确定我实际可以显示多少内容。 无论如何,问题是,我得到了StaticInjectorError(AppModule)[Component-> Store]没有用于存储的提供程序!
我似乎可以找到问题的根源。当然,CopyService在我的应用程序的MainModule的provider部分中列出。
@NgModule({
imports: [
StoreModule.forRoot(reducers, {})
],
providers: [CopyService],
entryComponents: [
//entry components
],
declarations: [
//declarations
]
})
export class MainModule { }
我正在研究Angular的依赖项注入,但是到目前为止,还没有任何途径可以将我引向这个问题的正确方向。
非常感谢!