바인딩 옵저버블 파이프 - ChoDragon9/posts GitHub Wiki

파이프

파이프는 어떤 값의 형태를 바꿀 때 사용하는 템플릿 엘리먼트이다.

template: `<p>Your birthday is {{ birthday | date }}</p>`

커스텀 파이프

@Pipe 어노테이션을 추가하고 PipeTransform 인터페이스를 사용해서 클래스를 작성하면 되는 데, PipeTransform 인터페이스는 다음과 같이 정의되어 있다.

export interface PipeTransform {
  transform (value : any, ..args : any[]) : any;
}
import { Pipe, PipeTransform } from '@angular/core';

@Pipe({ name: 'temperature' })
export class TemperaturePipe implements PipeTransform {
  transform (value : any, fromTo : string) : any {
    return (fromTo === 'FtoC') ?
      (value - 32) * 5.0 / 9.0 : // F to C
      value * 9.0 / 5.0 + 32 : // F to C
  }
}