私は RR 3 でサーバー サイド レンダリングをよく使用していたので、v4 のコンテキストでどのように機能するかを確認したかったのです。ウェブサイトのチュートリアルに従ってみましたが、現在はルート マッチと一緒にレンダリングが行われているため、以前のようにプリフェッチ データを実装する方法はありません。
v3 でサーバー レンダリングを行う方法は次のとおりです: https://github.com/alexnm/react-seed/blob/master/server/index.js
match 関数に基づいて、すべてのコンポーネント ツリーからすべてのプリフェッチ関数を呼び出してから、Promise.all
それらが終了するまで待機し、関数をトリガーしrenderToString
て html を返します。
RR4 にはコンポーネントしかない<ServerRouter>
ので、現在の解決策はレンダリング コードを複製することです:
https://github.com/FortechRomania/react-redux-complete-example/blob/master/src/server/index. js
また、タグのrender
関数を使用して、プリフェッチ アクションをトリガーしています。<Match>
それは醜く、プリフェッチされたデータでレンダリングしたいページの親コンポーネントにあらゆる種類の依存関係を導入します。
ここで何が欠けていますか?このシナリオのより良い解決策を見つけた人はいますか? 私はまだ有用なものを見つけていません。