ホームページ > ウェブフロントエンド > jsチュートリアル > React アプリに空白のページが表示されるのはなぜですか?

React アプリに空白のページが表示されるのはなぜですか?

Linda Hamilton
リリース: 2024-11-03 10:43:02
オリジナル
915 人が閲覧しました

Why Does My React App Show a Blank Page?

React の空白ページ: トラブルシューティング ガイド

React を使用する場合、空白ページに遭遇するとイライラすることがあります。この問題は、React-router-dom でのルーティングの仕組みについての誤解が原因で発生することがよくあります。特定のケースを掘り下げて、空白ページの問題を解決するための詳細な解決策を提供しましょう。

問題ステートメント:

次の React アプリケーションを考えてみましょう:

<code class="javascript">// App.js
function App() {
  return (
      <Router>
        <Routes>
          <Route path="/" component={Home} />
          <Route path="/wallet" component={Wallet} />
        </Routes>
      </Router>
  );
}</code>
ログイン後にコピー
<code class="javascript">// Wallet.js
export function Wallet() {
  return (
    <div>
      <h1>Wallet Page!</h1>
    </div>
  );
}</code>
ログイン後にコピー
<code class="javascript">// Home.js
export function Home() {
  return (
    <div>
      <h1>Home Page!</h1>
    </div>
  );
}</code>
ログイン後にコピー

http://localhost:3001/ に移動する場合、またはhttp://localhost:3001/wallet、ページは空白のままです。

解決策:

react-router-dom の最近のバージョンでは、Route のコンポーネント prop要素 prop に置き換えられました。要素 prop は値として React 要素を受け取ります。つまり、コンポーネントはコンポーネントへの参照ではなく JSX 要素として渡される必要があります。

この問題を解決するには、App.js ファイルを次のように変更します。

<code class="javascript">// App.js
function App() {
  return (
      <Router>
        <Routes>
          <Route path="/" element={<Home />} />
          <Route path="/wallet" element={<Wallet />} />
        </Routes>
      </Router>
  );
}</code>
ログイン後にコピー

この変更を行うことにより、コンポーネント (Home と Wallet) が React 要素として要素 prop に渡されるようになり、アプリケーションは期待どおりにレンダリングするようになります。ページ。

以上がReact アプリに空白のページが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート