Angular 2接口用于服务
我想开发一个搜索组件.
这是用例: >此组件使用搜索的术语参数调用服务. 我想只编写一个能够根据具体情况调用不同服务的搜索组件. > SearchInMaleEmployeeService 这两种服务都实现了返回员工列表的搜索功能. 我怎么能在Angular2中做到这一点? 额外问题:我如何根据服务返回的对象类型向我的组件说出用于呈现搜索结果的模板?
您可以通过依赖注入实现此目的.
正如您所说,创建两个实现相同ISearchService接口的不同服务. 使用SearchComponent时,请从模块向ServiceComponent提供适当的服务类. 你的SearchComponent看起来像 constructor(private searchService: ISearchService) {} 当在不同的地方使用SearchComponent时提供服务实例: providers: [ { provide: ISearchService,useValue: SearchInMaleEmployeeService} ] 要么 providers: [ { provide: ISearchService,useValue: SearchInFemaleEmployeeService} ] 有关Angular2依赖注入here的更多信息. 更新: 正如本指出的那样 提供语句需要编码为 provide('ISearchService',{useClass: SearchInMaleEmployeeService}) 并将类注入组件: constructor(@Inject('ISearchService') private searchService:ISearchService) {} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |