babel-loader和less-loader冲突导致babel-loader的include不生效问题

问题描述

babel-loader 和 less-loader一起用时 babel-loader的include配置会被影响到 我不引入less文件 就没问题

webpack config

const path = require("path");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const { CleanWebpackPlugin } = require("clean-webpack-plugin");

const config = {
    mode: "production",
    entry: "./src/index.ts",
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: "bundle.js",
        environment: {
            arrowFunction: false,
            const: false
        }
    },
    module: {
        rules: [{
            test: /\.ts$/,
            use: [{
                loader: "babel-loader",
                options: {
                    presets: [
                        ["@babel/env", {
                            targets: {
                                ie: "11"
                            },
                            corejs: "3",
                            useBuiltIns: "usage"
                        }]
                    ]
                }
            }, "ts-loader"],
            exclude: /node_modules/
        }, {
            test: /\.js$/,
            use: [{
                loader: "babel-loader",
                options: {
                    presets: [
                        ["@babel/env", {
                            targets: { ie: "11" },
                            corejs: "3",
                            useBuiltIns: "usage"
                        }]
                    ]
                }
            }],
            include: /html-entities/,
            exclude: /node_modules/
        }, {
            test: /\.less$/,
            use: [
                'style-loader',
                'css-loader',
                {
                    loader: "postcss-loader",
                    options: {
                        postcssOptions: {
                            plugins: [
                                [
                                    "postcss-preset-env",
                                    {
                                        browsers: "last 2 versions"
                                    }
                                ]
                            ]
                        }
                    }
                },
                'less-loader'
            ],
            exclude: /node_modules/
        }]
    },
    plugins: [
        new HtmlWebpackPlugin({
            title: "ace-world",
            favicon: "./public/favorite.ico",
            template: "./public/index.html"
        }),
        new CleanWebpackPlugin()
    ],
    resolve: {
        extensions: [".js", ".ts"]
    },
    devServer: {
        port: 8089,
        compress: true,
        client: {
            progress: true,
        },
    }
}

module.exports = config

引入less时不生效
image.png

阅读 1.4k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题