모든 어플리케이션은 간단한 작업을로 시작합니다: 데이터를 받고, 변형시키고, 사용자에게 보여주는 기능입니다.
얻은 데이터는 생성하기 간편한 지역변수 이거나 스트리밍하는 복잡한 데이터로 웹 소캣 위 에서 가능합니다.
data가 도착하면, 그 값을 곧바로 view에 직접 toString 값으로 넣을 수 있는데, 드물지만 이러한 작업은 가끔 좋은 UX를 제공하곤합니다.
예를 들자면, 대부분의 사용 방법으로,
사용자가 날짜를 April 16, 1988과 같은 간단한 양식을
Fri Apr 15 1988 00:00:00 GMT-0700 (Pacific Daylight Time) 처럼 보길 좋아하지 않습니다.
많은 어플리케이션을 반복적으로 같은 변경을 적용할 경우에 사용할 수 있습니다.
이러한 작업을 스타일처럼 사용할 수 있습니다. 실제로, HTML 템플릿으로 style처럼 사용할 수 있습니다.
앵귤러 pipe를 소개하자면, display-value를 변경시켜 쓰는 방식으로 HTML에 선언하여 사용할 수 있습니다.
live example / download example 으로 실행해 볼 수 있으며, Stackblitz나 download를 할 수 있습니다.
사용 하기
pipe는 데이터를 input 으로 받아 원하는 형태로 변환 시켜 표현할 수 있습니다.
이 페이지에서, 컴포넌트의 birthday 속성을 통해 사람이 보기 편한 날짜 형식으로 변경하는 pipe를 사용하게 됩니다.
src/app/hero-birthday1.component.tsimport { Component } from '@angular/core';
@Component({
selector: 'app-hero-birthday',
template: `<p>The hero's birthday is {{ birthday | date }}</p>`
})
export class HeroBirthdayComponent {
birthday = new Date(1988, 3, 15);
}
컴포넌트의 템플릿에 주목해 보겠습니다.
src/app/app.component.html<p>The hero's birthday is {{ birthday | date }}</p>
{{ }} 표현 안쪽을 보면, 컴포넌트의 birthday 값이 pipe 연산자 ( | )를 통해 오른쪽에 있는 Date pipe 함수로 흘러갑니다.
모든 pipe는 이러한 방식으로 작동합니다.
제공하는(built-in) pipe
앵귤러는 DatePipe
, UpperCasePipe
, LowerCasePipe
, CurrencyPipe
, 그리고 PercentPipe
와 같은 파이프를 갖고 있습니다.
모두 어떤 템플릿에서든지 사용 가능합니다.
다른 pipe를 좀 더 알고 싶다면 API 레퍼런스의 pipes topics를 참고하세요. "pipe" 단어를 포함하는 것을 필터링 해보세요.
앵귤러는 FilterPipe나 OrderByPipe
를 갖고 있지 않는 이유를 앵귤러 페이지 Appendix에 설명해 놓았습니다.