我试图在我的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>

希望能帮上忙!

07-26 04:30