Typescript 如何使自定义管道可用于Angular 2中的所有组件?
假设我创建了一个自定义彩虹大小的管道,它用彩虹的随机颜色作为css颜色道具将每个字母包装在一个跨度中。我希望能够在我的应用程序的所有组件中使用此自定义管道。目前,我正在像这样将管道导入每个组件Typescript 如何使自定义管道可用于Angular 2中的所有组件?,typescript,angular,Typescript,Angular,假设我创建了一个自定义彩虹大小的管道,它用彩虹的随机颜色作为css颜色道具将每个字母包装在一个跨度中。我希望能够在我的应用程序的所有组件中使用此自定义管道。目前,我正在像这样将管道导入每个组件 import { Component } from 'angular2/core'; import { RainbowizePipe } from '../pipes/rainbowize'; @Component({ 'pipes': [RainbowizePipe] }) <p&g
import { Component } from 'angular2/core';
import { RainbowizePipe } from '../pipes/rainbowize';
@Component({
'pipes': [RainbowizePipe]
})
<p>{{text | rainbowize}}</p>
在这样的模板中使用它
import { Component } from 'angular2/core';
import { RainbowizePipe } from '../pipes/rainbowize';
@Component({
'pipes': [RainbowizePipe]
})
<p>{{text | rainbowize}}</p>
太好了,我有彩虹色的文字。不过,最好只需将Rainbowize管道导入应用程序一次,然后在全球范围内提供
是否有推荐的Angular 2/Typescript方法使自定义管道在全球可用?您可以将自定义管道提供给,以便整个应用程序都可以使用
bootstrap(App, [provide(PLATFORM_PIPES, {useValue: RainbowizePipe, multi:true})]);
这样,您就不必在组件的pipes属性中明确地添加它们
下面是一个例子