問題タブ [react-ssr]
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 - ignore-styles パッケージの使用時に ssr で sass スタイル変数を使用する
私は、https://github.com/ayroblu/ssr-create-react-app-v2と同様のセットアップを sass 前処理とともに使用しています。
現在、スタイルは ignore-styles パッケージを使用してサーバー側で無視されています -
ただし、コンポーネントでは、次のようなコードを使用しています -
スタイル変数を介して参照されるクラス名は、(スタイルを無視するため) サーバー側ではレンダリングされませんが、フロントエンドでは正常に機能します。
サーバー側のレンダリングを壊すことなく、クラス名が完全に機能するようにするにはどうすればよいでしょうか?
javascript - ブラウザーがサーバーと同じ非同期呼び出しを行わないようにする
私はこのチュートリアルに従っています: https://crypt.codemancers.com/posts/2017-06-03-reactjs-server-side-rendering-with-router-v4-and-redux/これは「標準」だと思います反応でサーバー側のレンダリングを行う方法(?)。
基本的に何が起こるかは、react ルーター (v4) を使用して、レンダリングしようとしているすべてのコンポーネントのツリーを作成することです。
これらすべての promise が解決されるのを待ってから、 を呼び出しますrenderToString
。
私のコンポーネントには、fetchInitialData
次のような静的関数が呼び出されています。
getUsers
そして、サーバーとクライアントの両方で呼び出されることを除いて、これはすべてうまく機能します。
getUsers
もちろん、ロードされていてコールインしていないユーザーがいるかどうかを確認することもできますがcomponentDidMount
、非同期コールを 2 回行わないようにするための、より適切で明示的な方法が必要です。