webpack.dev.config.js 831 B

123456789101112131415161718192021222324252627282930313233
  1. const path = require('path');
  2. const fs = require('fs');
  3. const webpack = require('webpack');
  4. const merge = require('webpack-merge');
  5. const baseConfig = require('./webpack.config.js');
  6. const contentBase = path.join(__dirname, '/');
  7. module.exports = merge(baseConfig, {
  8. mode: 'development',
  9. devServer: {
  10. port: 9090,
  11. contentBase: contentBase,
  12. openPage: 'dev/',
  13. historyApiFallback: true,
  14. noInfo: true,
  15. overlay: true,
  16. open: true,
  17. hot: true,
  18. inline: true,
  19. before(app) {
  20. app.post('*', (req, res) => {
  21. // res.redirect(req.originalUrl);
  22. res.setHeader('content-type', 'application/json')
  23. res.send(fs.readFileSync(path.join(contentBase, req.path)));
  24. });
  25. }
  26. },
  27. devtool: '#eval-source-map',
  28. plugins: [
  29. new webpack.HotModuleReplacementPlugin()
  30. ]
  31. });