Wróć do strony głównej

ANGULAR 2 Format DatePipe

W większości aplikacji zachodzi potrzeba wyświetlania dat w różnych formatach. Największą popularnością na front-endowym rynku cieszy się biblioteka moment.js. W tym krótkim artykule, pokażę jak stworzyć DatePipe, który umożliwi nam wyświetlanie dat w dowolnych formatach, w oparciu o wspomnianą bibliotekę Moment.

TWORZYMY PIPE FORMATUJĄCY DATY

Zaczynamy od ściągnięcia paczki do naszej aplikacji poprzez NPM:

Tworzymy plik format-date.pipe.ts i umieszczamy w nim następujący kod:

Pamiętaj aby w  imporcie * as moment, uwzględnić swoją ścieżkę do biblioteki. W ten oto sposób stworzyliśmy gotowego Pipe’a do wyświetlania dat.

Jak widzimy, metoda transform przyjmuje 2 parametry:

  •  wartość w odpowiednim typie ( string, number etc), którą będziemy chcieli sformatować
  • oraz docelowy format daty, np. 'DD-MM-YYYY, HH:mm’

Celem artykułu nie jest omawianie spread operatora ( …args) oraz ogólnego schematu tworzenia Pipe’ów. Jeśli chcesz zagłębić te wątki, polecam zajrzeć do dokumentacji:

SPREAD OPERATOR

ANGULAR.IO PIPES

Skoro Pipe gotowy, to dodajemy go w interesującym nas module, np w app.module.ts:

I używamy w następujący sposób, przekazując interesujący nas format w stringu:

Dostępne formaty znajdziesz w dokumentacji bliboteki momentJS.

Dla formalności napiszmy jeszcze parę testów (format-date.pipe.spec.ts):

I Vuala, nasz format-date pipe gotowy ;), natomiast tutaj masz dostępny live example.

PODSUMOWANIE DatePipe

Na podsumowanie dodam, że powyższy przykład formatuje daty dla Twojej strefy czasowej, a jeśli chcesz aby Pipe dotyczył czasu UTC, wystarczy w środku kodu naszego pipe, podmienić return na następujący kod:

O autorze

Tomasz Nastały

JavaScript Developer, entuzjasta frameworka Angular oraz TypeScripta. Na co dzień lubię dzielić się wiedzą poprzez prowadzenie zajęć w jednym z trójmiejskich bootcampów i nagrywaniem kursów z Angulara.

Zapisz się do naszego newslettera. Bądź na bieżąco z najnowszymi trendami, poradami, meetupami i stań się częścią społeczności Angulara w Polsce. Rynek pracy docenia członków społeczności.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *