提供的角度服务In:从库导入的根引发NullInjectorError



我将服务移动到单独的npm包中。尽管服务被标记为已提供在根注入器中,当我尝试在我的应用程序中使用它时,我会得到NullInjectorError。我需要在providers数组中包含QueryParamServiceFactory来解决问题,但我希望在不添加到providers数组的情况下使用我的服务。我的实现有什么问题?

@Injectable({
providedIn: 'root',
})
export class QueryParamServiceFactory {
constructor(
private router: Router,
private route: ActivatedRoute,
private location: Location
) {}
create<T>(
filtersModel: T,
defaultPagination: IPagination
): QueryParamService<T> {
return new QueryParamService<T>(
this.router,
this.route,
this.location,
filtersModel,
defaultPagination
);
}
}

您的意思是将服务移动到一个单独的npm包中,您必须安装它并将其作为依赖项添加到您的package.json中吗?

因为如果是这样的话,在root中提供的than就不起作用了。Angular分析此注释的所有可注入内容,并将其添加到注入树的顶部。但是它不会分析node_modules文件夹,这就是为什么您的服务在注入树中不能自动

相关内容

  • 没有找到相关文章

最新更新