Angular2管道找不到名称

前端之家收集整理的这篇文章主要介绍了Angular2管道找不到名称前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我做了一个PIPE如下:

import {Pipe,PipeTransform} from '@angular/core';
import { Radio } from '../../models/radio';
@Pipe({
    name: 'radioFilter'
})
export class radioFilterPipe  implements PipeTransform {

    transform(value: Radio[],args: string[]): any {

        let filter = args[0].toLocaleLowerCase();
        return filter ? value.filter(radio => radio.station.text.toLocaleLowerCase().indexOf(filter) != -1) : value;
    }
}

在我的组件中,我添加了以下代码

import { radioFilterPipe } from './grid.station.pipe';

 pipes: [radioFilter],

但我得到一个编译错误错误TS2304:找不到名称’radioFilter’.我究竟做错了什么??

解决方法

根据Angular 2最终版本,您必须将管道,组件,指令包含在NgModule元数据的声明选项中.

@NgModule({
     declarations: [MyDirective,MyComponent,radioFilterPipe ],providers: [radioFilterPipe],//<-- Include pipe here if you want to use it in class as dependency
     imports: [ AppModule]
})

在管道数组中包含管道名称时,它应该是类名radioFilterPipe

import { radioFilterPipe } from './grid.station.pipe';

@Component({
  ..,pipes: [radioFilterPipe ],..
})

猜你在找的Angularjs相关文章