模板解析:找不到管道

Template parse: The pipe could not be found

我收到错误:

Template parse errors: The pipe 'amDateFormat' could not be found

这是我的app.module.ts

import { NgModule } from '@angular/core';
...
import { MomentModule } from 'angular2-moment';
...

@NgModule({
  declarations: [
    MyApp
  ],
  imports: [
    ...
    MomentModule,
    ...
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp
  ],
  providers: [
    ...
  ]
})
export class AppModule { }

然后在 service-booking-details.ts 我正在做以下事情:

import { Component} from '@angular/core';
import { IonicPage, NavController, NavParams} from 'ionic-angular';
import { MomentModule } from 'angular2-moment';
...    

@IonicPage()
@Component({
  selector: 'page-item-detail',
  templateUrl: 'service-booking-detail.html'
})
export class ServiceBookingDetailPage {
  service: any;
  ...

  constructor(..., navParams: NavParams, ...) {
    this.service = navParams.get('service');
  }
}

然后在 service-booking-detail.html 模板中,我尝试 使用来自 angular2-moment:

的管道
<ion-content>

    <ion-card>
      <ion-card-content>
         <p>{{ service.data | amDateFormat:'LL' }}</p>
      </ion-card-content>
    </ion-card>

</ion-content>

然后抛出错误“模板解析错误:找不到管道 'amDateFormat'”。

如何导入 MomentModule 以便我可以在模板中使用它而不会出错?

我可以通过将其导入特定页面 *.module.ts 文件来实现此功能。

在我的例子中,将 MomentModule 导入从 app.module.ts 移动到与组件相同的模块是固定的。

可以将momentModule添加到特定页面模块,或者最好添加到共享模块.

希望对你有帮助。

如果规范文件中存在这个(Jasmine,量角器)

import { MomentModule } from "ngx-moment";

beforeEach(() => {
    
      imports: [ MomentModule ]
  });

为我工作