Странное поведение карты источника в Webpack - PullRequest
4 голосов
/ 04 июля 2019

Я столкнулся со странным поведением Webpack (4.35.2), вызывающим мою функцию дважды, когда devtool: "source-map".

Вот простая структура для копирования:

index.js

(function test() {
    console.log("function test");
})();

other.js

import t from "./index";

webpack.config.js

const path = require("path");
const HtmlWebpackPlugin = require("html-webpack-plugin");

module.exports = {
    entry: {
        index: "./index.js",
        other: "./other.js"
    },
    output: {
        path: path.resolve(__dirname, "dist"),
        filename: "[name].js"
    },
    module: {
        rules: [
            {
                test: /\.js?$/,
                exclude: /(node_modules)/,
                loader: "babel-loader",
                options: {
                    presets: ["@babel/preset-env"]
                }
            }
        ]
    },
    plugins: [
        new HtmlWebpackPlugin({
            filename: "index.html"
        })
    ],

    devtool: "source-map",

    devServer: {
        contentBase: path.join(__dirname, "dist"),
        compress: true
    }
};

Если вы запустите его, test() будет вызван дважды.
Затем измените devtool на что-то другое, и он будет вызван один раз (как я думаю, и должен).

Кто-нибудь знает, что происходит?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...