表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

133/210

外部データ取り込み色々テスト中4(RxJSを勉強中)

大分、煮詰まった気がしますが、糸口が無い訳では無いです。


Angularの公式サンプルのJSONP関係のサンプルでよく使われる'RXJS'と言うライブラリー、これの公式サイトがあったので見て見ました。


RXJS - Introduction

https://rxjs-dev.firebaseapp.com/guide/overview


英語のみのサイトのようですが、用語の説明等、判りやすく書いて有るように思えます。

(英語というか他の言語全般苦手なので思えるだけかも?)


日本語のサイトもありました。


Angular6 から始める RxJS6 入門

https://qiita.com/MasanobuAkiba/items/a5026bd37603cc29e9e7


記事の対象者が


・これから Angular を始める方

・Rx, RxJS についてイメージをなんとなくイメージをつかみたい方


との事で、これは良さそう?



サンプルコードのテストがてらRXJSに限らず判らない用語をまとめながらテストしていきます。


まず以下のサンプルコードを動かしました。


-----------------------------------------

private subscription: Subscription; //変数定義


ngOnInit() {

this.subscription = of('桃', 'ヤマメ').pipe(

filter(v => v === '桃'),

map(v => v + '缶')

).subscribe(console.log);

}


ngOnDestroy() {

this.subscription.unsubscribe();

}

-----------------------------------------


上記コードを動かすために必要なimportは以下の通りです。

・import {Subscription, of} from 'rxjs';

・import {filter, map} from 'rxjs/operators'


この辺りは、Angularの日本語公式サイトの


RxJS ライブラリ

https://angular.jp/guide/rx-library


を見ました。


ついでと言ってはなんですが、そこの冒頭を見て、多少イメージが湧いてきました。


---------------------以下引用

RxJS は Observable 型の実装を提供します。

中略

ストリーム内の値を反復処理する

引用ここまで---------------------


Observable と言うのは、日本語に直すと"観測可能"という事ですので、『Angular6 から始める RxJS6 入門』のサイトにあるように、ストリーム(流れ)を見張ってあれこれ処理するためのライブラリーがRxJSのようですね。


もっとも上記のコードでは、まだObservable 型は出てきていないようですが・・・


使用している用語でわからないのは


・Subscription

・subscribe(対としてunsubscribe)

・of

・filter

・map

・(RxJSじゃないけど)pipe

・(用語じゃないけど)アロー関数式


あたりです。(つまりほぼ分からない)


それでも読み解いていくと、


・Subscriptionは名前的に”購読”

・('桃', 'ヤマメ')と言う配列に対して"桃"だけを選んで(filter)"缶"を付加(map?)、購読(subscribe)してconsole.log出力

・あれ?この例だと"this.subscription = "で変数セットする必要がない?


試すと、はい、変数セットの部分は不要でした。


また、配列に´桃´を複数入れてもconsole.logへの出力は一回。´桃´が無ければ当然出力0でした。


上げ足取りついでに、もう少し試してみます。


('桃', 'ヤマメ', '桃')と桃を追加して、さらにfilterをコメントにして動作しなくしました。


すると、コンソールには”桃缶”、”ヤマメ缶”、桃缶”と出力です。


上で"上記のコードでは、まだObservable 型は出てきていない"とか書きましたが、見ていくと"of"の戻り値が"Observable 型"のようです。


この辺りを調べると、良さそうなサイトがありました。


RxJSの基礎中の基礎

https://qiita.com/agajo/items/7942743a0130f7a0f30b


"Observableを作る"の項のCreateを使わないで作るが、それに相当しますね。


ちょっと(理解してないけど)賢くなってきた気が・・・


ついでにPipe関数の説明も良さげなサイトがありました。


Pipe関数の力

https://qiita.com/jlkiri/items/5aa539ee74be2cc99409


アロー関数式については…書き方覚えるしか無いですね(どうも性に合わない)


アロー関数式

https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Functions/Arrow_functions


キリが良いのでここで投稿します。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ