10강 concatMap, concatAll :: 8분 40초 부분 질문드립니다.
401
작성한 질문수 2
안녕하세요 강의 잘 듣고있습니다.
강의 듣다가 이해가 잘 안가는 부분이 있었는데요,
강의 8분 40초 쯔음,
stream.pipe(
concatMap(data=> Rx.from(userTask(data)))
).subscribe()
이런식으로 userTask(data) 를
Rx.from 으로 처리하여 옵져버블로 만들어야 한다고
알려주셨습니다.
그런데 그 이유에 대해서는 설명이 없었고,
왜 그렇게 해야하는지 잘 이해가 가지 않았습니다.
실험삼아 userTask(data) 를 Rx.from 으로 처리하지 않았는데도 함수가 잘 동작되었기 때문에 굳이 왜 Rx.from 함수를 써서 옵져버블로 만들었는지 잘 이해가 가지 않았습니다.
질문 :: userTask(data) 를 옵져버블로 만들어야 할 이유가 무엇인가요?
답변 2
1
안녕하세요 좋은 질문 감사합니다:)
먼저 설명드리자면 concatMap 오퍼레이터의 type definition을 살펴보시면 (types.d.ts 파일에 있습니다.)
ObservableInput 타입을 반환하는 함수를 인자로 받게 되어있는데, 보시는 바와 같이 SubscribableOrPromise 를 둘다 반환해도 사용이 가능합니다. 따라서 Rx.from 을 사용하지 않아도 그 자체가 Promise 이기 때문에 그대로 사용이 가능합니다.
하지만 굳이 Rx.from 을 사용한 이유는 Promise 를 Observable 로 변환해서 Observable 형태로 바꾸어 반환하는 것이 더 이해하기 쉬울 것 같아서 저렇게 사용했습니다.
'왜 Observable 이 아니라 다른 값을 반환했는데 동작하지?' 와 같은 헷갈림이 있을 것 같아서 저렇게 해두었는데, 이 내용을 강의에서 설명드리는 것이 더 좋았겠다는 생각이 드네요.. ㅎㅎ
0
안녕하세요. 우선 좋은 강의 감사드립니다. 강의를 듣다가 궁금증이 하나 생겼습니다. 대략적인 느낌으로는 concatAll 이 옵저버블이나 프로미스를 데이터 흐름으로 사용하기 위해 쓰는 것 같은데 그렇다면 혹시, concatMap(v => v) 요 문법이 concatAll() 과 같은 일을 하나요??
존재하지 않는 일기 url입력 시 alert이 두 번 떠요
0
16
1
useState 직접 구현 부분에서 질문이 있습니다.
1
20
1
학습을 하고 블로그에 정리를 해도 괜찮을까요?
1
23
1
교재(3쇄)와 강의 내용 문의
0
28
2
섹션2번 부분 강의 화면이 잘 못된것 같아서 문의합니다.
0
23
1
call stack 표현이 잘못표현된것이 아닌가요?
0
62
2
React 와 Virtual DOM 의 이야기 영상 실행이 안됩니다.
0
34
1
일반 강의와 차이점?
1
53
1
!= 연산자의 역할
0
35
1
중요하진 않지만 설명하신부분에서 안된부분..
1
36
1
강의 듣는 순서가 어떻게 되나요?
0
48
1
stopPropagation()에 대해서 질문 있습니다.
0
50
2
12.13) 하단 여백 스타일링 관련 질문 드립니다.
0
65
2
27강 Context내 RSC 사용 관련 문의
0
84
3
혹시 다음 강의 제작 예정된 것들이 있을까요?
0
79
1
Enable Linting 항목을 찾을수가 없습니다.
0
46
2
에러 질문드립니다
0
63
2
1강 질문
0
70
2
윈도우에서는동작줄이기가어디에있을까요??
0
34
1
백오피스를 개발할 때 아키텍처 구성에 대한 질문
0
58
3
ai가 만든 강의인가요?
0
145
1
VSCode 설정 문의
0
66
2
PPT 코드 관련 질문
0
48
2
강의 영상의 해상도를 더 높일 수는 없나요?
0
454
1





