React 18 —useEffectのトリッキー

React18で厳密モードを使用するときのuseEffectフックのトリッキーな動作について学ぶ

UnsplashのTimGouwによる写真

React18はすでに数週間リリースされています。いくつかの改善がもたらされますが、最も一般的に使用されるフックの1つに非常に奇妙な動作が導入されます。それは何ですか?どうぞ…

初期マウントでのみ実行する必要があるuseEffect()は、2回実行されます。

ええ、あなたはそれを正しく聞きました!厳密モードでReact18を使用している場合は、次のコードを使用します。

そのような出力を生成します:

Hello there!
Hello there!

ドキュメントに記載されているように、React18では新しい開発専用チェックが厳密モードに導入されています。この新しいチェックでは、コンポーネントが初めてマウントされるたびに、すべてのコンポーネントが自動的にアンマウントおよび再マウントされ、2番目のマウントで以前の状態が復元されます。

このような決定はReactチームによって行われました。将来的には、状態を維持しながらReactがUIのセクションを追加および削除できる機能を追加したいと考えています。コンポーネントは、何度も取り付けられたり破壊されたりするエフェクトに対して回復力がある必要があるため、追加のチェックが導入されました。

では、各コンポーネントはマウントされ、マウント解除され、最後に再度マウントされますか?

はい、それが現在の動作方法です。useEffect()このようなフックを使用した場合:

ページを更新すると、出力は次のようになります。

Mounting...
Unmounting...
Mounting...

概要

React 18は、新しい開発専用チェックを厳密モードに導入します。このチェックにより、コンポーネントが自動的にアンマウントおよび再マウントされ、useEffectフックが最初のマウントで2回起動します。

提案された投稿

カウボーイの嘘

巨大企業はいかにしてアメリカ国民にひどい嘘を売ったのか

カウボーイの嘘

西のなだらかな丘陵地帯では、太陽の最初の光が平原の曇った草を照らす、まばゆいばかりの金色の朝です。真っ黒で巨大な穏やかなアンガス牛の群れが日の出を背景にシルエットを描き、誰もがよく知っている場所へ人里離れた道を進んでいます。朝食バー。

パスワードはもう不要 — パスキーがパスワードをどのように置き換えるか

パスワードはもう不要 — パスキーがパスワードをどのように置き換えるか

曖昧さを避けるために、次の用語が使用されます。認証者; ログイン Web サイトの作成に使用されている携帯電話。ユーザーがログイン要求サービスを行うために使用している Web サイトまたはアプリケーション。特定のサービスを提供するベンダー。例:

関連記事

地球を救ってお金を稼ぐ方法

地球を救ってお金を稼ぐ方法

ペットボトル、ガラス瓶、アルミ缶、グリーンエネルギーパッケージなどを、何回考えずに捨てたことがあるでしょうか? リサイクルする代わりに何かが得られたらいいのにと何度思ったことか。あなたがほとんどの人と同じなら、おそらく答えは何度もあるはずです。リサイクルは、多くの場合、即時的または具体的な利益をもたらさない面倒な作業、面倒な作業、または義務であると考えられています。

ポッドキャストが影響力を持つ理由は何ですか?

ポッドキャストが影響力を持つ理由は何ですか?

先週、私はPressGazette(英国のメディアニュースウェブサイト)経由で送信されたプレスリリースに気づきました。この記事は、スカンジナビアのポッドキャスト ホスティングおよび広告会社である Acast が、ポッドキャスティングにおいて「おそらく最も影響力のある」パブリッシャーのコンソーシアムを率いることになると発表しました。

キリスト教徒の迫害: 私たちが語らないヘイトクライム

イスラム嫌悪のことは忘れてください。宗教的憎悪犯罪の主な犠牲者はキリスト教徒(そしてユダヤ人)です。

キリスト教徒の迫害: 私たちが語らないヘイトクライム

理性的な人なら誰でも、政界とメディア界が左派、さらには極左によって支配されており、政治的言説に不均衡を生み出している状況を知っています。宗教の分野では、この不均衡は明らかです。左翼の新聞やネットワークは急いでキリスト教の信仰を擁護していません。

その脅威アーカイブ: Vol 7 ブラックバスタ

その脅威アーカイブ: Vol 7 ブラックバスタ

今日の相互接続された世界では、サイバー攻撃の脅威がかつてないほど蔓延しています。サイバー犯罪者や国家主体は常に脆弱性を悪用して貴重なデータを盗もうとしており、あらゆる規模の組織に重大なリスクをもたらしています。