webpack.dev.config.js 971 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. const path = require('path');
  2. const merge = require('webpack-merge');
  3. const common = require('./webpack.common.config.js');
  4. const webpack = require('webpack');
  5. const HtmlWebpackPlugin = require('html-webpack-plugin', null, 2);
  6. const webpack_config = merge(common, {
  7. mode: 'development',
  8. output: {
  9. filename: 'js/[name].[hash:8].bundle.js',
  10. },
  11. module: {
  12. rules: [
  13. {
  14. test: /\.css$/,
  15. use: ['style-loader', 'css-loader', 'postcss-loader'],
  16. },
  17. {
  18. test: /\.less$/,
  19. use: ['style-loader', 'css-loader', 'postcss-loader', 'less-loader'],
  20. },
  21. ],
  22. },
  23. devServer: {
  24. contentBase: path.resolve(__dirname, '../dist'),
  25. open: true,
  26. port: 9000,
  27. compress: true,
  28. hot: true,
  29. },
  30. plugins: [
  31. new HtmlWebpackPlugin({
  32. template: 'public/index.html',
  33. inject: 'body',
  34. hash: false,
  35. }),
  36. new webpack.HotModuleReplacementPlugin(),
  37. ],
  38. });
  39. module.exports = webpack_config;