webpack.config.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. const path = require("path")
  2. const HtmlWebpackPlugin = require('html-webpack-plugin');
  3. module.exports = {
  4. mode: "development",//模式
  5. //"development",//开发模式
  6. //"production", //生产模式
  7. //"none"//无
  8. // entry:"./src/a1.js" , //单个入口
  9. // entry :{ //多个入口
  10. // dada: './src/a1.js',
  11. // lala:"./src/a2.js"
  12. // },
  13. // entry:[ //将多个js打包为一个js
  14. // "./src/a1.js",
  15. // "./src/a2.js"
  16. // ],
  17. output: { //出口
  18. // filename:"[name].js", //[name]-[id]-[hash].jss
  19. // filename:"file.js",//指定打包后的文件名称
  20. clean: true,//自动删除旧的打包文件 生成新的打包文件
  21. // path: path.resolve(__dirname,"dididi") //指定打包后的文件
  22. },
  23. /**loader 加载器 */
  24. module: {
  25. rules: [
  26. {
  27. test: /\.css$/,//作用于将css打包
  28. use: [
  29. { loader: 'style-loader' },
  30. { loader: 'css-loader' }
  31. ]
  32. // use:['style-loader','css-loader'],
  33. },
  34. {
  35. test: /\.(png|svg|jpg|jpeg|gif)$/i,
  36. type: 'asset/resource',
  37. },
  38. { //兼容老版的浏览器
  39. test: /\.m?js$/,
  40. exclude: /(node_modules|bower_components)/,
  41. use: {
  42. loader: "babel-loader",
  43. options: {
  44. presets: ["@babel/preset-env"],
  45. },
  46. },
  47. }
  48. ]
  49. },
  50. // 插件,自动生成html页面
  51. plugins: [new HtmlWebpackPlugin({
  52. title: "打包工具", //标题
  53. template: "./src/example.html"//模板
  54. })],
  55. // 代码映射
  56. // 点击打包=>直接跳转源代码
  57. devtool:"inline-source-map"
  58. }