webpack(2.6.1)とwebpack-dev-server(2.4.5)を使用してフロントエンドの開発環境を構築しています。npm startのコマンドで、webpack && webpack-dev-server
を実行し、ブラウザでコンパイルし表示出来ているのですが、ブラウザで表示中にファイルを編集しても変更が反映されません。
ファイル編集するとCLIでは、webpack: Compiling...webpack: Compiled successfully.
と表示されているのですが、ブラウザのリロードがされずかつ手動でリロードしても変更が反映されません。
コンパイルは実行されているのに何故反映されないのでしょうか・・・。
試しに、webpack-dev-server実行中にpublic以下のbundle.jsを削除し、ファイル編集しコンパイルを実行しますが、bundle.jsが生成されませんでした・・。(出力されてない様子。)
設定情報一覧
javascript
1// package.json 2"scripts": { 3 "start": "webpack && webpack-dev-server" 4} 5// webpack.config.js 6const path = require('path'); 7const webpack = require('webpack'); 8module.exports = { 9 entry: path.resolve(__dirname, 'src/index.js'), 10 output: { 11 filename: 'bundle.js', 12 path: path.resolve(__dirname, 'public/assets/js') 13 }, 14 module: { 15 loaders: [ 16 { 17 test: /\.js$/, 18 exclude: /node_modules/, 19 loader: 'babel-loader', 20 query: { 21 presets: ["es2015", "react"] 22 } 23 }, { 24 test: /\.css$/, 25 use: ['style-loader', 'css-loader'] 26 } 27 ] 28 }, 29 plugins: [ 30 new webpack 31 .optimize 32 .UglifyJsPlugin({ 33 compress: { 34 warnings: false 35 } 36 }), 37 new webpack.HotModuleReplacementPlugin() 38 ], 39 devServer: { 40 contentBase: path.resolve(__dirname, 'public'), 41 port: 8080, 42 inline: true, 43 hot: true, 44 open: true 45 } 46};
/======追記======/
webpack-dev-serverはbundle.jsは出さないそうでした。そして、編集するとコンパイルが自動的に走るようになりました。ただブラウザのHOTリロードはされないようです。
Modify
javascript
1const path = require('path'); 2const webpack = require('webpack'); 3 4module.exports = { 5 entry: path.resolve(__dirname, 'src/index.js'), 6 output: { 7 path: path.resolve(__dirname, 'public/assets/js/'), 8 filename: 'bundle.js' 9 }, 10 module: { 11 loaders: [ 12 { 13 test: /\.js$/, 14 exclude: /node_modules/, 15 loader: 'babel-loader', 16 query: { 17 presets: ["es2015", "react"] 18 } 19 }, { 20 test: /\.css$/, 21 loader: ['style-loader', 'css-loader?modules'] 22 } 23 ] 24 }, 25 devServer: { 26 contentBase: path.resolve(__dirname, 'public'), 27 port: 8080, 28 inline: true, 29 hot: true, 30 open: true, 31 compress: true 32 } 33};
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。