問題タブ [react-static]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - ドキュメントに別のコンポーネントが存在するかどうかを検出する方法は?
常に存在するヘッダー コンポーネントを持つReact Staticで構築されたサイトがあります。現在のページにヒーロー コンポーネントがあるかどうかに応じて、ヘッダーは明るい色または暗い色のいずれかになります。
ヘッダーはルートの外側でレンダリングされuseEffect
、子がレンダリングされる前にトリガーされます。これはおそらくルーティングのせいです。
これは現在のコードです:
レンダリングされるの<Routes default />
は、React Static で構成された静的ページstatic.config.js
です。
以下は Hero コンポーネントの例です。
アプリケーションを実行してログを見ると、次のようになります。
ヒーローはルーターにあり、ヘッダーはそうではありませんが、どうすればヘッダーからヒーローの存在を検出できますか? これは非常に一般的な使用例のように感じますが、インターウェブに関する情報は見つかりませんでした。
前もって感謝します!
javascript - 子ルートのレンダリングについてヘルプが必要です。親ルートは正常に機能しますが、子ルートは 404 に落ちます
JSON データを使用して静的サイトを開発しています。react-static デフォルト サンプルの投稿データを置き換えたところ、正常に動作しました。
問題/news
:別の JSON に多数のメッセージを含む別のルートを追加すると、親ルートは正常に機能しますが、またはすべて/news
の子ルートは404 ページに移動します。 /news/1/
/news/2/
ブラウザのコンソールで、エラーが発生しました
GET http://localhost:3000/__react-static__/routeInfo/news/1 404 (Not Found)
反応アプリがマウントされる前にデータを取得できるため、これらは動的ルートではないと思います。それを修正するにはどうすればよいですか?
私の static.config.js で
/src/containers に Message.js があります
作業news.js
は次のとおりです
javascript - addPrefetchExcludes - TypeError: Object(...) は関数ではありません
実行時に動的ルートを登録するには、addPrefetchExcludes を使用する必要があります。
アプリ コードaddPrefetchExcludes Docsの前に配置する必要があります。
しかし、私はこのエラーが発生しています:
App 関数の宣言の前にその行があります
App.js からその関数を削除すると、ルートは正常に生成されるため、エラーの理由はルート構成に関連しているとは思いません。
App.js コード
依存関係