在angular2中,如何有条件地注册管道?

时间:2016-11-01 19:14:34

标签: angular

Angular2的依赖注入机制允许有条件地声明服务,这里是来自thetram网站的一个例子:

{ 
provide: Engine,
  useFactory: () => {
    if (IS_V8) {
      return new V8Engine();
    } else {
      return new V6Engine();
    }
  }
}

是否可以使用Pipes做类似的事情?

1 个答案:

答案 0 :(得分:0)

这是发生的事情之一:在几分钟后找到你在Stackoverflow上提出的问题的答案。

因为angular2的配置方式只是javascript,所以非常简单:

environment['development'] ? DevPipe : ProdPipe

如评论中所述,另一种方法是将有条件声明的服务注入管道。这样,您还可以咨询其他服务,以确定需要在管道中注入哪些服务,这是第一种方法无法完成的。