reactのuseEffectを追ってみる。useStateなら実装まで辿り着いた。かじりブログかじりブログjavascriptreactreactのuseEffectを追ってみる。useStateなら実装まで辿り着いた。readみなさんこんにちは、かじりです。今回はReactのuseEffectの実装を追ってみました。途中ですが先行公開します。typeを使用しているのでそこにDispatcherが定義されていると目星をつける。ReactCurrentDispatcher;react-reconciler/srcのなかでuseEffectに関係ある箇所を探すと、ReactFiberHooks.old.jsとReactFiberHooks.new.jsが見つかる。newとoldのだしわけに使っているフラグはfalseになっているのでoldをみる。false;Dispathcer型は大量に見つかるがDispatcher型でuseEffectなのは三ヶ所。enableNewReconciler,};throwInvalidHookErrorはエラー。残りはmountEffectとupdateEffect。HooksDispatcherOnUpdateとHooksDispatcherOnMountが関係しているので、mount時とupdate時だと思われる。mountEffectもupdateEffectもeffectImplの内部でpushEffectしている。effect;}というあたりまでわかったが、これがuseEffectの実装??なのか?という気持ちで終わった。useStateならわかりそうだが、useEffectはいまいち一旦中断。