In Angular, you cannot directly extend a pipe using inheritance like you would with classes. However, you can achieve similar functionality by creating a new pipe and reusing the logic from an existing pipe.
Example:
import { Pipe, PipeTransform } from '@angular/core';
import { DatePipe } from '@angular/common';
@Pipe({
name: 'extendedDatePipe'
})
export class ExtendedDatePipe implements PipeTransform {
constructor(private datePipe: DatePipe) {}
transform(value: Date, format: string = 'mediumDate'): string {
const formattedDate = this.datePipe.transform(value, format);
return `Formatted Date: ${formattedDate}`;
}
}
Usage in Template:
<p>{{ currentDate | extendedDatePipe:'fullDate' }}</p>
<!-- Output: Formatted Date: Monday, January 1, 2023 -->