본문 바로가기

프로그래밍/Angular60

[RxJS / angular] 24. switchMap(옵저버블 매핑 + 전환) switchMap 이란? switchMap는 고차 매핑과 스위치를 해주는 연산자입니다. mergeMap, concatMap과 마찬가지로 switchMap은 방출된 각 항목을 우리가 제공하는 함수에 정의한 대로 새로운 내부 옵저버블 항목으로 변환합니다. switchMap은 이전 내부 옵저버블 항목을 구독 취소하고 중지한 후 다음 새 내부 옵저버블 항목으로 전환한다는 점이 특징입니다. 다시 말해 한번에 하나의 내부 옵저버블 항목만 구독합니다. switchMap 마블 다이어그램 이전 포스트에서 mergeMap, concatMap에서 사용했던 예제를 switchMap연산자로 바꿔서 살펴보도록 하겠습니다. 마블 다이어그램에서 switchMap은 of로 생성되는 입력 옵저버블을 구독하고 출력 옵저버블을 생성합니다... 2022. 8. 18.
[RxJS / angular] 23. mergeMap (옵저버블 매핑 + merge ) 옵저버블은 옵저버블을 방출할 수 있습니다. 그때 사용하는 연산자가 고차 매핑 연산자입니다. concatMap에 이이서 mergeMap에 대해 알아보도록 하겠습니다. mergeMap 이란 mergeMap은 고차 매핑과 함께 병합(merge)기능을 하는 연산자입니다. concatMap과 마찬가지로 mergeMap 연산자는 방출된 각 항목을 우리가 제공하는 함수에 정의한 대로 새로운 내부 옵저버블 항목으로 변환합니다. mergeMap의 주요한 특징은 내부 옵저버블 항목을 병렬로 실행하고 결과를 병합한다는 점입니다. 아래 예제에서는 외부 옵저버블을 생성하기 위해 of 생성자 함수를 사용하고 있습니다. 내부 옵저버블은 http.get 호출로 리턴되는 옵저버블입니다. 옵저버블을 방출하는 옵저버블입니다. 파이프 처리.. 2022. 8. 16.
[RxJS / angular] 22. concatMap 이해하기 (옵저버블 매핑 + concat ) 옵저버블은 또다시 옵저버블을 방출할 수 있습니다. 옵저버블을 방출하는 옵저버블을 다룰 때는 고차 매핑 연산자를 사용하는 것이 좋습니다. 고차 매핑 연산자에 대해 더 알고 싶은 분은 지난 포스트를 참고해 주세요. 이번 포스트에서는 고차 매핑 연산자인 catcatMap에 대해 자세히 알아보도록 하겠습니다. concatMap 이란? concatMap은 고차 매핑과 concat(연결)작업을 동시에 한다고 생각하면 이해하기 편합니다. 여기서 말하는 고차 매핑은 옵저버블에서 방출된 옵저버블을 구독해서 처리하는 과정이라고 생각해주세요. concatMap 연산자는 방출된 각 항목을 우리가 제공하는 함수에 정의된 대로 새로운 내부 옵저버블 항목으로 변환합니다. 외부 옵저버블에서 방출된 각 항목을 각각 내부에 정의된 처리.. 2022. 8. 12.
[RxJS / angular] 21. 고차 옵저버블과 고차 매핑 연산자 이번 포스트부터 고차 옵저버블과 switchMap과 같은 고차 매핑 연산자에 대해 알아보게 됩니다. 옵저버블을 방출하는 옵저버블이 존재하는 걸까요? 고차 옵저버블(higher-order Observable)이란? 옵저버블을 방출하는 옵저버블? 우리에게 익숙한 옵저버블은 숫자나 문자열과 같은 기본 요소를 방출합니다. 위 예에서는 옵저버블이 2, 3, 4 숫자를 방출하고 있습니다. 하지만 옵저버블이 다시 옵저버블을 방출할 수 있습니다. 위 예제는 옵저버블을 방출하게 됩니다. of에서 생성된 옵저버블로 방출되는 숫자는 map 연산자에서 http get에 매핑됩니다. 따라서 소스 옵저버블에서 방출된 각 항목은 옵저버블을 출력 옵저버블로 방출합니다. 이렇게 옵저버블을 내보내는 옵저버블을 고차 옵저버블(higher.. 2022. 8. 9.