Angular 将@ngrx store作为依赖项注入工厂提供程序中

Angular 将@ngrx store作为依赖项注入工厂提供程序中,angular,ngrx,Angular,Ngrx,我正在使用Angular应用程序的app.module中的函数工厂初始化一项服务。像这样的 export function analyticsServiceFactory() { return ConfigService.env === "development" ? new AnalyticsDevService() : new AnalyticsService(); } ... const providers = [ ... { provide: AnalyticsService

我正在使用Angular应用程序的app.module中的函数工厂初始化一项服务。像这样的

export function analyticsServiceFactory() {
  return ConfigService.env === "development" ? new AnalyticsDevService() : new AnalyticsService();
}
...
const providers = [
  ...
  { provide: AnalyticsService, useFactory: analyticsServiceFactory }
];
到目前为止,这一切都很顺利。 问题来了,因为现在我需要将状态(@ngrx)作为依赖项注入其中一个服务。我该怎么做

我知道我可以向工厂提供程序添加依赖项,但如何添加状态?这可能吗

此外,我的商店和analyticsServiceFactory在不同的模块中定义,这使得它更加困难

有什么想法吗?
谢谢。

您可以在提供程序定义的
“deps”
数组中要求依赖项,然后在factory函数中接受它们作为参数:


{
提供:餐饮服务,
useFactory:(存储:存储,httpClient:httpClient)=>{
返回新的FooService(httpClient、store);
},
deps:[存储,HttpClient]
}

您可以在提供程序定义的
“deps”
数组中要求依赖项,然后只接受它们作为factory函数中的参数:


{
提供:餐饮服务,
useFactory:(存储:存储,httpClient:httpClient)=>{
返回新的FooService(httpClient、store);
},
deps:[存储,HttpClient]
}