使用Angular4我已经为不同的数据库创建了服务。每个数据库的动作都是一样的(有点像CRUD),但有不同的API端点(但功能完全一样)。以编程方式将类型传递给服务的最佳方式是什么?
我正在为每个数据库创建一个服务,但我想一定有更好的方法来管理这个。
有没有办法在导入过程中或组件中传递“名称”给服务,以便服务知道应该点击哪个端点?
实施例:
import {ApiService} from '../_services/api.service.ts';
和在该服务:
let endpoint = enter code here defined from import of component
private url = '/api/' + endpoint
当然,但这不是一个好主意。你让你的代码变得脆弱而难以阅读以节省几行 – bryan60
你可以扩展它如何变得脆弱吗?有6 150个线路服务或1个服务延长6次更好吗? – kisonay
6 150线服务。为了实现这一目标,你需要强制每个消费者遵守这种单一的服务风格,这将是一个固有的容易出错的过程,此外,潜在的单一服务的变化可能会破坏整个应用程序并促成重大重组,这就是它的意思变脆。角度风格指南建议干燥,但不要太干。这太干了。 Angular公开已经封装了主要CRUD操作的http客户端。没有理由让它变得更通用。 – bryan60