私はSPAにreduxとreact routerを使用する方法を知っています。バネMVC、JSPなどのサーバー側のフレームワークを使用した、より伝統的なマルチページWebアプリケーションでreduxを使用する方法を知りたいマルチページWebサイトでreduxを使用するには?
複数のページが同じストアを共有できますか?サーバーサイドレンダリングのドキュメントから、すべてのページサーバーは新しいストアを必要とします。
私はSPAにreduxとreact routerを使用する方法を知っています。バネMVC、JSPなどのサーバー側のフレームワークを使用した、より伝統的なマルチページWebアプリケーションでreduxを使用する方法を知りたいマルチページWebサイトでreduxを使用するには?
複数のページが同じストアを共有できますか?サーバーサイドレンダリングのドキュメントから、すべてのページサーバーは新しいストアを必要とします。
あなたは最近、誰かが従っているすべてのために大きなSPAのサイレンの曲に抵抗したと聞いてうれしいです。
複数のページがあるため、各ページは1つの独立したReactアプリと見なされるため、それぞれ1 Redux
が必要です。しかし、あなたの多くのページでは、jQuery
または純粋なReact
で十分です。ですから、私の答えは単なる単純なものです:の複雑な状態管理、豊富なユーザインタラクション、高いコード管理性の要求を持つページでRedux
を使用してください。
についてRedboxストアについては、何十年もインターネットを動かす非常に優れた古いものを持っているので、ページ全体に共有ストアは必要ありません。サーバーセッション。ページがレンダリングされるたびに、この共有値をwindows.__INITIAL_STATE__
に設定してください。 cookie
、local storage
、...いくつかの選択肢がありますが、私はそれらが本当に必要ではないと思います。
ページAは反応、還元、jquery、ページBは反応しか出さないなど、別のページに別のフロントエンドスタックを提供するのは良いアドバイスではないと思います。とにかくブラウザはjsバンドルをプロダクションにキャッシュし、ページ間を区別するために不要な複雑さのレイヤーを追加します。ここで別のページの異なるアプリケーション*について実際に話している場合を除きます。 – timotgl
私たちは皆さんがすでにそれを知っていたので、SPAについて言わせるために別のページについて話しています。私はまだあなたが単純なページで 'jQuery'や' vanillajs'でもできると信じています。適切な場所に適切なツールを使用してください。すべてのために '反応'を使用して停止! – haotang
私は昨日同様の質問をしました:http://stackoverflow.com/q/37096921/916450。本当の答え(私にとっては)、まだ.. –
kwelchによる正解は以下の通りです。あなたがページをリロードすると、すべてのロードされたライブラリなどで、あなたはJavaScriptのランタイム・コンテキスト全体を失うので(私はこれが正しい言葉であることを願っています)、すべてのページは新しいストア・インスタンスを必要とします(これは同じデータで初期化できます)。 – timotgl