How to implement moment.js as a pipe in an Angular2 project

后端 未结 4 1773
有刺的猬
有刺的猬 2020-12-30 09:35

I would like to implement moment.js library inside an angular2 project i order to convert a UTC time to a certain time zone Europe/london and that

4条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-12-30 10:11

    Update: June 2018

    Official Documentation about PIPES

    To learn about Moment in Typescript and Moment Date Formats.

    Example given below based on the Question here! Using PIPE technique we can use moment in Angular View as well (Date Formatting).

    MomentPipe.ts

    import { Pipe, PipeTransform } from '@angular/core';
    import * as moment from 'moment';
    
    @Pipe({ name: 'dateFormat' })
    export class MomentPipe implements PipeTransform {
        transform(value: Date | moment.Moment, dateFormat: string): any {
            return moment(value).format(dateFormat);
        }
    }
    

    You must include your pipe in the declarations array of the AppModule.

    import { NgModule } from '@angular/core';
    import { AppComponent } from './app.component';
    import { MomentPipe } from './momentPipe';
    
    @NgModule({
      imports: [
        // Your Modules
      ],
      declarations: [
        AppComponent,
        // Your Components
        MomentPipe
      ],
      providers: [
        // Your Providers
      ]
    })
    export class AppModule { }
    

    Use it in your View/Html like below.,

    {{ createdDate | dateFormat: 'MMMM Do YYYY, h:mm:ss a'}}
    

    Hope this helps.,

提交回复
热议问题