Pipe Parameters
We'll learn how to use pipe parameters in this lesson.
We'll cover the following
We’ll look at another pipe defined by Angular called the DatePipe
. The DatePipe
will help you format dates into various formats. It’s a versatile pipe because we have the freedom to use different formats.
The DatePipe
requires the date to be a Date()
object, time in milliseconds from 1970, or an ISO string. We must make sure the value is in the required format before we use the DatePipe
. Otherwise, it won’t work.
In the app.component.ts
file, we’ll create a property called todaysDate
. Its value will be a new instance of the Date
object.
export class AppComponent {
name = 'john doe';
todaysDate = new Date();
}
In the app.component.html
template, we’ll add a <p>
tag with the following content:
<p>{{ todaysDate | date }}</p>
By default, this will output the following:
Apr 26, 2020
The output may be slightly different because the date
pipe reacts differently based on your environment or when you’re taking this course.
Using pipe parameters
By itself, the DatePipe
is capable of formatting the date without our help. It was able to understand the current date because we provided it with an instance of the Date
object.
In some cases, we may want the date in a specific format. Since pipes are functions, they have parameters for modifying the behavior of the function. Parameters can be added by adding a colon after the name of the pipe, followed by the value.
The date
pipe’s parameter is the format we wish to use for the date. On the documentation page for the date
pipe, there’s a section called Custom format options. Here’s a link to the page: https://angular.io/api/common/DatePipe#custom-format-options.
Under the format
column, we can use the characters as placeholders for the actual value. The date
pipe will take care of replacing the placeholders with the appropriate value. For example, let’s say we want to output only the month and day. We could update the pipe in the template to the following:
<p>{{ todaysDate | date: 'MMMM d' }}</p>
This will output the following:
April 26
This may be different for some of you, depending on when you’re taking this course.
Predefined date formats
One last thing, in the documentation for the date
pipe, there’s a section called Predefined format options. If you don’t feel like setting the format yourself, you can use a predefined set of format options. For example, let’s say we want to use the short
format. We could update the expression to the following:
<p>{{ todaysDate | date: 'short' }}</p>
The pipe will still be able to transform the output even though we’re not passing in a format with placeholders. It will notice we want to use one of its inner predefined format options.
For this course, we’ll stick to manually formatting the date ourselves. Here’s the updated code:
Get hands-on with 1400+ tech skills courses.