我想拥有一个将接口作为依赖项接受的服务-这意味着当从其他服务注入该服务时,我希望能够选择要在其中使用的具体类(假设它实现了我的接口)
我发现通用类型可能是一个不错的解决方案,例如:
service.ts:
struct inotify_event
second_service.ts:
class Service<T extends CustomServiceI> {
constructor(private dep: T, private http: Http) { }
}
third_service.ts:
constructor(private service: Service<CustomServiceOne>)
它不起作用的原因-它为constructor(private service: Service<CustomSerivceTwo>)
带来了错误。
这种情况下有更好的解决方案吗?