2015-12-28 29 views
8

私は2つのエントリ・ポイントとのWebPACKを使用しています:ファイルを変更した後にwebpackを再コンパイルするには?

entry: { 
    js: './assets/index.js', 
    css: './assets/sass/all.scss' 
}, 

私はそれが再び自動的にWebPACKの実行jsまたはscssファイルを変更したときにそれを設定したいです。


は私がコマンドでwebpack-dev-serverを使用しようとしました:それは再び構築しているよう

webpack-dev-server --hot 

に見え、それはメッセージ

WebPACKの出力:バンドルは今VALIDです。

ただし、ブラウザをリフレッシュしようとすると、変更が表示されません。 (devのツールでキャッシュが無効になり、Ctrl + F5が押された)。

output: { 
    path: path.join(__dirname, '/public'), 
    filename: 'bundle.js' 

}

答えて

-5

あなたがについて学ぶためにWebPACKのドキュメント(https://webpack.github.io/docs/tutorials/getting-started/#watch-mode)をチェックアウトすることができ、:それは設定された出力ファイルにどこか別の場所ではなくビルドしていたかのように動作しません。また、ノードを再起動する、それがありますwebpackの時計モード。

+0

まあまあ私はノードモンと時計を組み合わせることができると思います... – BrunoLM

+1

"ドキュメントを読む"は質問に対する答えではありません。 Downvoted。 – dudewad

0

私はWebpackのエキスパートではありませんが、webpack-dev-serverはディスクに書き込まれません。これは、ファイルを提供するために使用するExpressインスタンスを介してメモリから結果を提供します。

は、localhostへのパスを変更することでこれをテストすることができます:8080/WebPACKの-devのサーバー/ bundle.jsあなたのhtmlファイルにしている場合、あなたはWebPACKの-devのサーバーを実行して変更が表示されるはずです。

それを処理する適切な方法は、publicPathプロパティを使用してwebpack.config.jsを更新することです:

output: { 
    path: path.join(__dirname, '/public'), 
    filename: 'bundle.js', 
    publicPath: "/public/" 
} 

この場合、scriptタグはSRC =「公開/ bundle.js」を参照してください。

More info

9

変更内容は、単にwatchフラグ使用を監視するWebPACKの場合:このオプションのWebPACKで

webpack --watch 

が変更を監視し、再コンパイルします。

関連する問題