React.js の遅延読み込み: 説明

DDD
DDDオリジナル
2024-09-14 14:30:031197ブラウズ

チートシートと例を含む完全なガイド

簡単な紹介

遅延読み込みは、Web 開発、特に React などのライブラリやフレームワークでの効果的なパフォーマンス最適化手法です。これには、ユーザーのアクションに応じて、または要素が画面に表示されようとしているときなど、必要な場合にのみコンポーネントまたはリソースがロードされます。これにより、特にパフォーマンスが制限されているデバイスやインターネット接続が遅いデバイスでのアプリケーションの初期読み込み時間が短縮され、リソース消費が減少し、ユーザー エクスペリエンスが向上します。


React での遅延読み込みの仕組み

React は、主に React.lazy 関数を通じて遅延読み込みを実装します。これは、読み込み状態とフォールバック UI を処理する React.Suspense と組み合わせて使用​​されることがよくあります。以下は、React アプリケーションで遅延読み込みを実装する方法を理解するための重要な手順です。


React.js Lazy Loading: EXPLAINED
1. React.lazy

による動的インポート

React.lazy は、必要な場合にのみコンポーネントの動的インポートを有効にします。結果は、デフォルトの React コンポーネントを含むモジュールに解決される Promise です。

const DelayedComponent = React.lazy(() => import('./DelayedComponent'));

この例では、DelayedComponent は、React が最初にレンダリングを試みたときにのみロードされます。


2. React.Suspense でラッピング

読み込み状態を処理するには、React.Suspense を使用して遅延読み込みコンポーネントをラップします。これにより、コンポーネントの読み込み中にフォールバック コンテンツ (読み込みスピナーなど) を表示できます。

import React, { Suspense } from 'react';

function App() {
  return (
    <div>
      <Suspense fallback={<div>Loading content...</div>}>
        <DelayedComponent />
      </Suspense>
    </div>
  );
}

上記のスニペットでは、 DelayedComponent がロードされるまで待ってから表示します。読み込みに時間がかかる場合は、「コンテンツを読み込み中...」というメッセージが表示されます。


3.エラー処理

遅延読み込みでは、障害 (ネットワーク停止など) が発生した場合のエラー処理が不可欠です。読み込みプロセス中に問題が発生した場合は、エラー メッセージまたはフォールバック コンポーネントを表示できます。


4.ルーティングとの統合

遅延読み込みは、URL に基づいてさまざまな画面やコンポーネントが読み込まれるルーティングのコンテキストで特に役立ちます。 React Router のようなルーターを使用すると、React.lazy を使用して各ルートのコンポーネントを動的にロードできます。

import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import React, { Suspense } from 'react';

const HomeView = React.lazy(() => import('./HomeView'));
const AboutView = React.lazy(() => import('./AboutView'));

function App() {
  return (
    <Router>
      <Suspense fallback={<div>Loading views...</div>}>
        <Switch>
          <Route path="/about" component={AboutView} />
          <Route path="/" component={HomeView} />
        </Switch>
      </Suspense>
    </Router>
  );
}

この場合、HomeView と AboutView は、それぞれのルートにアクセスしたときにのみロードされます。


遅延読み込みが役立つのはなぜですか?

  • 初期ロードの高速化: 最初にアプリの重要な部分のみをロードすることで、初期ロード時間が短縮されます。
  • リソース使用量の削減: 遅延ロードにより、コンポーネントが必要な場合にのみロードされるため、帯域幅とシステム リソースが節約されます。
  • ユーザー エクスペリエンスの向上: ユーザーは、アプリを操作する前にすべてが読み込まれるのを待つ必要がないため、より迅速な応答が得られます。

遅延読み込みによる問題の解決

  • 初期読み込み時間が遅い: アプリケーションに多くのコンポーネントや重いライブラリがある場合、遅延読み込みによりコードが分割され、その時点で必要なものだけが読み込まれます。
  • 不必要なリソースの消費: アプリの重要でない部分の読み込みを延期すると、パフォーマンスが向上し、リソースが節約されます。

遅延読み込みとコード分割

React の

遅延読み込みは、多くの場合 コード分割 と連携して機能し、アプリケーションが小さなバンドルに分割されます。 Webpack のような最新の JavaScript バンドラーは、この分割を自動的に処理できます。コード分​​割と遅延読み込みを組み合わせることで、現在のビューに必要なコードのみが確実に配信され、パフォーマンスが最適化されます。


結論

遅延読み込みとコード分割は、Web パフォーマンスを向上させる強力なツールであり、高速で応答性の高いアプリケーションを構築するために不可欠です。必須ではないリソースの読み込みを延期し、必要な場合にのみ処理することで、React プロジェクトのユーザー エクスペリエンスとリソース管理を大幅に向上させることができます。


このブログは、明確さ、一貫性、コンテンツ ガイドラインの順守を確保するために、AI ツールの助けを借りて編成されました。

引用:

React、「遅延読み込み」、https://react.dev/learn

このコンテンツが役立つと思われ、サポートしたい場合は、私にコーヒーを買ってください

以上がReact.js の遅延読み込み: 説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。