Closed4
RecoilのSelectorとカスタムフック
Recoilのselectorについて、カスタムフックとの明確な違いがわからない。
自由度はカスタムフックの方が高く、selectorを利用するモチベーションが不明。
でもわざわざ用意してあるんだから何かしらの利点があるんだろうなと思う。
カスタムフックでやる場合、呼び出されたコンポーネント単位で値を計算・保持することになる。
一方でselectorはRecoilのcontextに保持されるからコンポーネントの数によらず計算・保持は単一のみで済む。
こういうことかな?
うん、間違いなさそう。
アプリの肥大化に伴いこのメリットも大きくなっていくことは自明だし、特にselectorを利用することに問題がなければ基本はselectorを利用していく形式でいい。
後はselectorをカスタムフックでラップするべきかどうかを確認したい。
私の知識じゃ内部の処理における両者の違いがわからないな……多分どっちもそんなに処理速度は変わらないと思うけど。
一方でリーダブルコード的な考えで言えばカスタムフックでラップした方がRecoilへの依存性を下げるという意味で利点になるはずだから、とりあえずはラップする方針でいいと思う。
このスクラップは2022/07/30にクローズされました