React なんで2回走るの?
BRANK
ムーザルちゃんねるのムーです。今回は @zaru さんと「React の StrictMode で処理が2回走ること」について話しました。React に入門してコードを書いていると「あれ、なんかここ 2 回実行されてない?」となる瞬間、あると思います。それについての話になります。なんで2回走るのかわからないStrictMode について知らない、知ってるけど2回走る意味がわからないどこの処理が2回走るかわからないという方に向けた動画となっています。 がありますなぜ StrictMode は 2 回走らせているのか?どこで 2 回走るの? (え、そこも2回走るの?)StrictMode があります。これによって、2 回走ります。off にすれば、2 回走らなくなります。ではなぜ 2 回走らせているのか?React コンポーネントは、純粋関数であることが前提とされています。純粋関数であれば、何度走っても結果は同じで、困らないはず。複数回走って結果が変わる → 純粋じゃない → よくない(バグの可能性) → バグ早期発見!結論: 純粋関数でない不具合の可能性のあるコードを発見しやすくするために、2 回走っています。例: 純粋じゃない React componentlet x = 0; function NotPure() { x = x + 1; retu…