【问题标题】:How to create a source map for WebPack?如何为 WebPack 创建源映射?
【发布时间】:2015-11-18 17:13:59
【问题描述】:

我当前的webpack.config 文件

module.exports = {
    entry: "./entry.js",
    output: {
        devtoolLineToLine: true,
        sourceMapFilename: "./bundle.js.map",
        pathinfo: true,
        path: __dirname,
        filename: "bundle.js"
    },
    module: {
        loaders: [
            { test: /\.css$/, loader: "style!css" }
        ]
    },
};

我在这里阅读https://webpack.github.io/docs/configuration.html 并发现以下内容:

output.sourceMapFilename

[file] 被 JavaScript 文件的文件名替换。

[id] 被块的 id 替换。

[hash] 替换为编译的哈希值。

如你所见,我已经在上面添加了它,但是当我的 webpack watch 运行时,我没有看到地图文件?

这是怎么做到的?

【问题讨论】:

    标签: javascript module webpack source-maps


    【解决方案1】:

    这里有两个选项:

    将 CLI development shortcut 与您的 --watch 选项一起使用:

    webpack -d --watch
    

    或使用webpack.config.js 中的配置devtool 选项:

    module.exports = {
        devtool: "source-map",
        entry: "./entry.js",
        output: {
            devtoolLineToLine: true,
            sourceMapFilename: "./bundle.js.map",
            pathinfo: true,
            path: __dirname,
            filename: "bundle.js"
        },
        module: {
            loaders: [
                { test: /\.css$/, loader: "style!css" }
            ]
        },
    };
    

    【讨论】:

    • 啊,谢谢!这有效webpack -d --watch 配置工具在我使用该命令之前没有做任何事情。
    • @LeonGaban -d 选项只是一个快捷方式,其中包括devtool 之一。配置选项应该适用于webpack --watch
    • 我认为这不是非此即彼的情况。您需要同时拥有 -- '-d' 命令参数并包括 devtool 声明以及 webpack.config.js 中的 sourceMapFilename 定义
    • 不确定出了什么问题,但这些建议对我没有任何帮助。我怀疑这可能是因为将代码分成块(例如 main.js、vendor.js)。
    猜你喜欢
    • 2017-05-06
    • 2019-11-05
    • 2018-04-18
    • 1970-01-01
    • 2017-06-13
    • 2015-11-05
    • 2016-03-15
    • 2014-09-05
    • 2018-12-04
    相关资源
    最近更新 更多