2016-09-23 6 views
2

私はwebpackと共にdjangoバックエンドとreact.jsフロントエンドを持っています。私はこのページごとにローカルにすべてを設定しました:http://owaislone.org/blog/webpack-plus-reactjs-and-django/と私のdevのサーバーを実行しているすべてのpeachyです。私の制作webpackファイルでは、サイトと同じものをコピーしました。reaction.js webpackをherokuにdjangoでデプロイする方法は?

しかし、私はherokuに展開したいと思います。これは私が立ち往生する場所です。 webpack-dev-serverをプロダクション時にある種の高速サーバーに置き換える必要がありますか?

djangoを実行して静的なjavascriptファイルを提供することはできますか?これらのファイルを生成するには、 "webpack webpack-config.prod.js --progress -p" を実行してみましたが、 "モジュール 'fs'を解決できません"というエラーが表示されますが、アセット/バンドルのファイル。また

私は(のdevのサーバーなし)私のローカルマシン上で「WebPACKのWebPACKの-config.prod.js --progress -p」を実行してみて、私は私のコンソールでこれを取得ジャンゴルートに行く場合:

GET http://localhost:3000/assets/bundles/main-62ddfced1c44b3270fa7.js net :: ERR_CONNECTION_REFUSED

私はこれを動作させるのにかなりの時間を費やしていますが、開発環境をセットアップする方がはるかに高速でした。私はここで間違って何をしていますか?

+0

- それは実際に[README](https://github.com/webpack/webpack-dev-server/blob/masterで限り言います/README.md)。 –

答えて

0

--save-devフラグを使用して依存関係をインストールした場合、リンク先のガイドのように、プロダクトフラグが設定されたnpm installが実行されるため、ヒロクにインストールされません。したがって、fsがpackage.jsonのdevDependenciesにある場合、それはインストールされません。

私が知る限り、ここには2つのオプションがあります。生成されたバンドルをバージョン管理下に置いて、英雄またはにプッシュして、--saveフラグだけで依存関係をインストールすることができます。私はherokuに公開する場合は--saveを使用してから、webpackを実行してバンドルを構築するheroku-postbuildというpackage.jsonスクリプトを追加することを個人的に好みます。あなたは間違いなく生産にWebPACKの-devのサーバーを使用するべきではありません

"scripts": { 
    "heroku-postbuild": "npm run dist", 
}, 
+0

'fs'は、devまたはproductionの要件にありませんでした。実際に私が "webpack webpack.config.js"(非プロード設定)をやろうとすると、同じ 'fs'エラーも出ます。 – freeBeerTomorrow

+0

あなたはそれをコマンドラインから実行していますか?そのため、 'fs 'を必要とするスクリプトはグローバルスコープでそれを探します。もしそれをnpmスクリプトに入れると、実際にはローカルのnode_modules /フォルダを見るでしょう。 – ivarni

+0

どのノードのバージョンを使用していますか? npm v3があれば、インストールしたモジュールはその依存関係をnode_modules(v2がネストするモジュール)に直接インストールします。そうであれば、おそらく 'devDependencies'から依存関係を移動することに戻るでしょう。 – ivarni

関連する問題