Skip to content

webpack.config.js

js
const path = require('path');
// 1. 引入打包html插件
const HtmlWebpackPlugin = require('html-webpack-plugin');

//引入单独打包css插件
const MiniCssExtractPlugin = require("mini-css-extract-plugin");

module.exports = {
  entry: './src/index.js', //webpack入口
  output: { //webpack出口 打包路径
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.js',
    clean: true,
  },
  mode: 'development',
  module: { //loader  css 跟ts  用来识别css跟ts文件
    rules: [
      { test: /\.css$/, use: [MiniCssExtractPlugin.loader, 'css-loader'] },
      { test: /\.ts$/, use: 'ts-loader' }, 
    ],
  },
  plugins: [
    // 提取css成单独文件
    new MiniCssExtractPlugin({
      // 定义输出文件名和目录
      filename: "css/main.css",
    }),
    new HtmlWebpackPlugin({
      template: 'index.html', // 指定入口模板文件(相对于项目根目录)
      filename: 'index.html', // 指定输出文件名和位置(相对于输出目录)
      // 关于插件的其他项配置,可以查看插件官方文档
    })
  ]

};