webpack.config.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. const {resolve} = require('path')
  2. const HtmlWebpackPlugin = require('html-webpack-plugin')
  3. /**
  4. *
  5. */
  6. module.exports = {
  7. entry: './src/index.js',
  8. output: {
  9. filename:'[name].js',
  10. path:resolve(__dirname,'build')
  11. },
  12. module:{
  13. rules:[
  14. {
  15. test:/\.css$/,
  16. use:['style-loader','css-loader']
  17. }
  18. ]
  19. },
  20. plugins: [
  21. new HtmlWebpackPlugin()
  22. ],
  23. mode: 'development',
  24. /**
  25. * 解析模块规则
  26. */
  27. resolve:{
  28. //配置解析路径别名 缺点:编辑器无提示
  29. alias:{
  30. $css: resolve(__dirname,'src/css')
  31. },
  32. //配置省略文件路径的后缀名
  33. extensions:[
  34. '.js','.json','.css'
  35. ],
  36. //告诉webpack解析模块位置
  37. modules:[
  38. resolve(__dirname,'../node_modules'),'node_modules'
  39. ]
  40. },
  41. devServer:{
  42. //运行代码目录
  43. contentBase: resolve(__dirname,'build'),
  44. //监视build目录下文件,一旦变化就会reload
  45. watchContentBase:true,
  46. //忽略监视
  47. watchOptions:{
  48. ignored: /node_modules/
  49. },
  50. //启动gzip压缩
  51. conpress: true,
  52. //端口
  53. port:3000,
  54. host:'localhost',
  55. //自动打开浏览器
  56. open:true,
  57. //开启HMR功能
  58. hot:true,
  59. //不显示启动服务器日志信息
  60. clientLogLevel:'none',
  61. // 除了一些基本启动信息,其他内容不显示
  62. quiet:true,
  63. // 出错时,不全屏提示
  64. overlay: false,
  65. // 服务器代理 -- 跨域问题
  66. proxy:{
  67. '/api':{
  68. target:'http://localhost:3000',
  69. //重写
  70. pathRewrite:{
  71. '^/api':''
  72. }
  73. }
  74. }
  75. }
  76. }