React17におけるuseEffectの破壊的変更を理解する
BRANK
しばらく前、React 17 RCが発表されました。現行のReact 16に比べて、いくつかの破壊的変更がある一方、新機能が何もないというのが特徴です。Reactチームとしては、新機能が無いとはいえ、破壊的変更も少なくなっておりなるべく16から17へのアップデートを行なってほしいという考えのようです。この記事では、React 17における破壊的変更のうち、useEffectのクリーンアップのタイミングに関する変更を取り上げます(以下は公式サイトから引用)。In React 17, the effect cleanup function also runs asynchronously — for example, if the component is unmounting, the cleanup will run after the screen has been updated.(筆者による翻訳) React17では、effectクリーンアップ関数も非同期的に実行されるようになります。例えば、コンポーネントがアンマウントされるとき、クリーンアップ関数は画面が更新_された後_に実行されます。React 16からReact 17以降への移行をスムーズにするために、たとえいますぐReact 17にアップデートするつもりが無いとしても、React 17に適合した書き方をするのが得策です。そこで、この記事ではuseEffectのクリーンアップ関数の実…