Angular 8-创建主服务以提供服务

时间:2020-01-27 11:05:42

标签: angular service

顾名思义,我正在尝试创建一个主服务以向组件提供我的服务。我真的不确定要解决什么问题。我已经看到了将一项服务放在另一项服务中的一些信息,但是他们没有尝试在多个组件中使用该服务。通过简单的搜索,我们就可以看到这些基本的初学者内容。

某些服务需要彼此通信,并且它们可以正常工作,直到一个对另一个具有依赖关系为止,该依赖关系依赖于最后一个依赖关系,并导致循环依赖关系。但是我想要的只是让他们交流,如果那样做的话,就不会真正地“彼此依赖”。当我拥有主服务时,将其需要的所有内容都包括在内,然后将其放入两个或多个组件中,就会出现以下一个或两个错误:

1)初始化之前无法调用“服务”。
2)警告:循环依赖

但是,如果仅在一个组件中,它将按我想要的方式工作,例如。 Master.Auth.methodHere()

我尝试将主服务放在提供程序中,它具有根注入器,只是没有将所有内容放在一起以方便地调用我需要的东西。

解决方案 多亏了AnuShankars的回应,我才得以踏上正确的道路。我发现了这个
Inject a service manually

这真的使我走到了尽头。谢谢阿努

1 个答案:

答案 0 :(得分:0)

可以为此使用Injector。照常通过构造函数注入它,然后当您需要一些导致循环依赖的服务时,请从中获取该服务。 例如

const example = this.injector.get(ExampleService);