繁体   English   中英

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

[英]Angular2 Injector - Dynamically choose Service Implementation

为了更好地测试和分离前端/后端开发,我们目前正在尝试寻找一种动态方式来提供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之类的东西来创建单独的模拟服务器?

我认为这将使您的项目代码更整洁,不将模拟服务包含在同一代码库中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM