2017-03-16 3 views
3

私は静的な部分(Webページ)と動的部分(ログイン後)を持つ既存のFlaskアプリを持っています。私がする必要があるのは、既存のAPIを使用するReactアプリケーションとして動的部分を書き直すことです。ReactアプリをFlaskアプリに統合

これまで私は完全に分離されたReactアプリケーションを構築してきましたが、FlaskパートからReactパートへの移行方法はわかりません。理想的には、テンプレートにReact/React-DOMスクリプトを含めてコンポーネントを書きたくないのですが、Flaskアプリケーションの現在の動的部分に単一ページアプリケーション(create-react-appを使用)を書きたいと思います。

移行が実際に行われるアイデアはありますか?おそらく、@ app.route(/ dynamic-part)が起動したときに、テンプレートをレンダリングする以外の何かを書きますか?

EDIT:一部のユーザーは、私の質問は非常に明確ではないと考えているので、私はこの時にケースの他の誰かつまずくでより正確にしようとするでしょう:

私が求めていた問題は、から切り替える方法でしたフラスコはそれを処理する経路の一部であり、それを処理することは経路の一部であり、お互いの道を邪魔することはありません。したがって、下記の回答と同様に、Reactアプリケーションのビルド出力をFlask内に置き、FlaskのルートにはのすべてというReactのビルド出力のindex.htmlに処理されるはずのルートが示されています。それはうまくいった。うまくいけば、もう少し明確になりました。そうでない場合は、もう一度やり直してみます。

答えて

3

create-react-appの指示には、building for relative pathsのように見えます。だから、いつものようにReactアプリを開発することができます。

あなたが準備ができたら、あなたはシングルページアプリケーション(html、バンドルされたjavascript、cssなど)に必要なすべてのアセットを持つビルドフォルダを作成します。そのフォルダ全体を残りのテンプレートを使ってディレクトリにコピーすることができます。 @ app.route(/ dynamic-part)は、./app/templates/build/index.htmlを指すことができます。

+1

これは良い音です。私は今日それを撃つだろうし、何が起こったかを教えてあげる。ありがとう。 – dnmh

+1

これはうまくいきました。ありがとう! – dnmh

関連する問題