我已经在Angular 2应用中创建了一个自定义管道。我使用管道的视图代码如下所示:
<div class="search-item-name">{{result.name}} <span class="search-context">{{result.type | contextualize}}</span></div>
管道文件本身如下所示:
从'@ angular / core'导入{Pipe,PipeTransform};
@Pipe({name: 'contextualize'})
export class ContextPipe implements PipeTransform {
transform(value: string) {
// Logic here...
}
}
}
但是,在我的组件视图中尝试使用它之后,我收到此错误:
模板解析错误:无法找到管道'contextualize'
我不清楚为什么会这样。我已将管道放在共享模块中:
import { ContextPipe } from './context.pipe';
import { CapitalizePipe } from './capitalize.pipe';
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { AbbreviatePipe } from './abbreviate.pipe';
@NgModule({
imports: [
CommonModule
],
declarations: [
CapitalizePipe,
AbbreviatePipe,
ContextPipe
],
exports: [
CapitalizePipe,
AbbreviatePipe,
ContextPipe
],
})
export class SharedModule { }
然后,在根ngModule和我尝试使用此管道的组件中,我已经导入了SharedModule。但仍然出现错误。我有什么东西在这里俯瞰吗?
答案 0 :(得分:1)
这是您的管道代码:
constructor() { }
像这样:
@Pipe({name: 'contextualize'})
export class ContextPipe implements PipeTransform {
constructor() { }
transform(value: string) {
// Logic here...
}
}
}