Angular2 注入器 - 动态选择服务实现



为了更好地测试和分离前端/后端开发,我们目前正在尝试找到一种动态的方式来在devMode中提供模拟服务实现。

这个想法是在你的环境中指定哪些服务应该被模拟,然后让注入器基于此返回真实或模拟的实现。

现在的问题是,是否可以为喷油器提供的每项服务动态执行此操作,或者我们是否必须为每个服务使用单独的工厂(做同样的事情(?

// pseudo code
onRequestProviderFor(serviceName)
{
if(environment.mockTheseServices.contains(serviceName))
{
return new "Mock"+serviceName.ts
}
else
{
return new serviceName.ts
}
}

这可能吗?在注入器过程中是否有一个钩子可以用来执行此操作(在 devMode 中(?

您是否考虑过使用类似 https://github.com/typicode/json-server 的东西创建一个单独的模拟服务器?

我认为不在同一代码库中包含模拟服务会使您的项目代码更干净。

相关内容

  • 没有找到相关文章

最新更新