在我的 Angular 应用程序中,我正在实现 2 项服务:
- 身份验证服务
- 空闲服务
这两项服务相互依赖:
- 当我注销时,我必须停止监视用户空闲状态(通过调用
IdleService
中的方法) - 当用户超时时,我必须从
AuthenticationService
调用logout
方法来注销用户。
这种方法会导致循环依赖问题。您知道如何避免它或如何通过更好的方法改变我的实际方法吗?
最佳答案
书中Dependency Injection in .NET 2nd edition (第 6.3 节),Mark Seemann 和我描述了依赖循环通常是由 Single Responsibility Principle 引起的。违规行为。我的印象是,在你的具体情况下也是如此。当一个类具有许多内聚性不是很强的方法时,通常会违反 SRP。
解决方案是将 AuthenticationService
和 IdleService
这两个类之一(或者甚至两者)拆分为更小的类。
关于angular - 避免循环依赖注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47798896/