我试图在我的Angular 4
项目中使用自定义管道。无法理解为什么编译器无法识别组件模板中的管道。
Q格式化管道
@Pipe({ name: 'qFormat'})
export class QFormatPipe implements PipeTransform {...}
共享模块
@NgModule({
declarations: [QFormatPipe],
exports: [QFormatPipe]
})
export class SharedModule { }
功能模块
@NgModule({
imports: [SharedModule],
declarations: [MyComponent]
})
export class FeatureModule{ }
mycomponent.html网站
<div>{{someProp | qformat}}</div>
^^^^^^^
模板抛出错误:
角度:找不到管道“qformat”
我遗漏了什么吗?
最佳答案
找不到管道的原因是,您用大写字母f将管道注册为'qformat',但在HTML中,用小写字母f将管道注册为'qformat'。这就是发生错误的原因。您的共享模块注册和导入/导出完全正确。HTML应该是:
<div>{{someProp | qFormat}}</div>
希望能帮上忙!