Slide 1

Slide 1 text

と について 笠原 渉

Slide 2

Slide 2 text

笠原 渉 株式会社 フロントエンドエンジニア 日本ユーザー会

Slide 3

Slide 3 text

アジェンダ とは何なのか? どうやって使うのか? とは何なのか? どうやって使うのか?

Slide 4

Slide 4 text

とは でリアクティブアプリケーションを構築するための ライブラリ に がリリース で複数のパッケージを管理してる で な状態管理を実現するため のパッケージがメインだった 今年も新しいパッケージが追加されたのでそれらを 紹介

Slide 5

Slide 5 text

で追加 と異なりコンポーネントの状態管理に特化したライブラリ コンポーネントのライフサイクルに紐付けられていてコンポーネントが破棄されると 状態が される

Slide 6

Slide 6 text

のメリットとトレードオフ メリット はコンポーネントツリー内の特定のノードに紐付いているためそ のノードが破棄されると自動的にクリーンアップされる 状態は各 で完結しているため、同じコンポーネントでも独立した インスタンスを持つことが可能 トレードオフ と比較して コンポーネントとの結合度は高いのでスケーラビリティが低い 一部 は使えない

Slide 7

Slide 7 text

と どちらを使うか? どちらかが優れている、というものではない アプリケーションの性質に合う方を使う 場合によっては両方使うこともある 決定するための指標 アプリケーションの規模 状態の寿命 アプリケーション自体の寿命

Slide 8

Slide 8 text

使い方 簡単なカウンターアプリを想定

Slide 9

Slide 9 text

使い方 簡単なカウンターアプリを想定 型の を管理するため の型を定義

Slide 10

Slide 10 text

使い方 簡単なカウンターアプリを想定 型の を管理するため の型を定義 型の を継承した を用意 で状態の初期化

Slide 11

Slide 11 text

使い方 状態は というセレクタを使うこ とで簡単に読み取りができる の引数に任意の を 指定することで状態を自由に し て返すことが可能

Slide 12

Slide 12 text

使い方 使う際に へ の登録はコンポーネントで行う コンポーネントのノードごとに のインスタンスがシングルト ンになる ※ のインスタンスがコン ポーネントのインスタンスごとにシングルト ンになるのは依存性注入の方法によるも の で調べてみよう

Slide 13

Slide 13 text

使い方 使う際に へ の登録はコンポーネントで行う コンポーネントのノードごとに のインスタンスがシングルト ンになる 状態の読み取り方は他のサービス同 様

Slide 14

Slide 14 text

使い方 状態は以下のどちらかを使うことで更新ができる

Slide 15

Slide 15 text

使い方 は現在の状態を引数にとる を渡す

Slide 16

Slide 16 text

使い方 は引数に または の パターンを取ることができ る として を受け 取ったとき内部で が呼び出 され、状態が更新される

Slide 17

Slide 17 text

使い方 の中身を見てみる

Slide 18

Slide 18 text

で追加 なアプリケーションを実現するためのライブラリ 提供される機能は つ This package is still experimental and may change during development.

Slide 19

Slide 19 text

の代替 でも でもどちらで も動作する

Slide 20

Slide 20 text

特徴 の代替 でも でもどちらでも動作する との比較 は重い動的なインタラクティブな だと の変更検知にパフォー マンス低下の懸念がある は がなくても動くためこの問題が解決できる

Slide 21

Slide 21 text

使い方 のように書くだけで同じように使える で を無効にしても は変わらず動作する

Slide 22

Slide 22 text

な値を にバインドするためのディレクティブ を使わない右のように書 く な値をバインドする場合は が必要 しかし は な場合描画がされ ない 右の場合は 後に が 更新されるまで が描画されない

Slide 23

Slide 23 text

な値を にバインドするためのディレクティブ を使うと右のようになる は な場合でも描画され る 右の場合は 後に が 更新される前でも は描画される

Slide 24

Slide 24 text

デモ

Slide 25

Slide 25 text

まとめ とは との違い 使い方 まだ な機能 と の つが提供されている のどちらでも動作する

Slide 26

Slide 26 text

参考リンク 公式ドキュメント サンプル