RxJS를 입문하려고 하면 기존의 샘플 코드가 에러가 된다! (RxJS 6.0)

결론



2018 4월부터 RxJS의 메이저 업데이트가 행해졌기 때문에, 넷에 구르고 있는 샘플 코드는 사용할 수 없게 된 모양.

・RxJS 6.0 변경점 정리( @ponday  씨)
htps : // m / 폰다 y / ms / 7966787 0bc8f3 2

· npm RxJS 페이지
htps //w w. 음 pmjs. 코 m/파 c카게/rxjs

초보자의 손잡이



2018년부터 맑고 프로그래머로 일을 하게 되었습니다.
통신계의 처리를 쓸 때에, 상사로부터 RxJS 정도 사용할 수 있게 되어 두라고 들었으므로 학습을 시작한 대로.

node.js 환경이므로 평소와 같이 패키지를 추가합니다.npm install rxjs --save
우선, 「RxJS입문」이라고 조사해 샘플 코드를 찾아 시험하려고 하면, 사이트를 순회해 보는 것도 동작하지 않는다.
(filter라든지 map라든지, not a function이 되어 버린다.)

【알기 쉬운】RxJS로 시작하는 함수 리액티브·프로그래밍( @kitfactory  씨)
htps : // 이 m / t t p c와 ry / ms / c 9c 37 A12745 A CF0697

공식 레퍼런스의 샘플 코드를 써 보는 것도 변함없이.
· RxJS Introduction
htps : // rxjs-에서 v. 흠뻑 빠지다 p. 코 m/구이데/오오 rゔぃ에 w

패스가 이상한가 하고 악전 고투하는 것도 효과 없음.
조사해 보면, 아무래도 버전 변경으로 대규모 사양 변경이 있었다는 것.
npm 공식의 레퍼런스로부터, 이하 샘플 코드를 실행했는데, 동작을 확인.

test.ts
import { Observable, Subject, ReplaySubject, from, of, range } from 'rxjs';
import { map, filter, switchMap } from 'rxjs/operators';

range(1, 200)
  .pipe(filter(x => x % 2 === 1), map(x => x + x))
  .subscribe(x => console.log(x));

나중에 깨달았습니다만, 공식 레퍼런스도 오른쪽 상단에 「WARNING: This is BETA site」라고 쓰여졌습니다・・・・・・.



그렇다고는 해도, 상사의 코드를 리팩토하는 관계로 이전 버젼과 같은 쓰는 방법을 사용하고 싶기 때문에, 이하 커멘드로 다운그레이드하는 것에.
npm install [email protected] --save
이제 이전 샘플 코드에서도 작동합니다. (5.5.7의 이유는 상사의 사용 버전에 맞추었기 때문입니다.)
샘플 코드를 빌릴 때에는 대응 버전도 확인하는 것이 좋다는 교훈을 얻었습니다.

좋은 웹페이지 즐겨찾기