javascript - Webpack 和源 map ?

标签 javascript webpack source-maps

我目前正在使用 windows.onerror 来记录生产中的 javascript 错误。我正在使用 webpack 来捆绑我们的 javascript 并使用 uglify 插件来缩小。不幸的是 ErrorEvent对象的 linenocolumno 来自 webpack 生成的缩小的 blob。 Webpack 正在生成其默认的源映射文件。有没有办法得到正确的 linenocolumno

w.addEventListener("error", handleError, true);

function handleError(e) {

    let errorToLog = {};

    if (e.message) {
        errorToLog.ErrorMessage = e.message;
    }

    if (e.filename) {
        errorToLog.source = e.filename;
    }

    if (e.lineno) {
        errorToLog.lineNumber = e.lineno;
    }

    if (e.colno) {
        errorToLog.columnNumber = e.colno;
    }

    if (e.error.stack) {
        errorToLog.stackTrace = e.error.stack;
    }

最佳答案

使用 webpack 的 `devtool'添加源 map 的设置:

{
    devtool: "#inline-source-map"
}

请注意,使用完整的源映射会增加转译时间的开销,因此如果您在开发过程中可以不用列号,请使用更快的 cheap-module-inline-source-map相反:

{
    devtool: "#cheap-module-inline-source-map"
}

关于javascript - Webpack 和源 map ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40685699/

相关文章:

google-chrome - 使用源映射调试 openlayers 5 应用程序

javascript - 如何解析一个URL?

javascript - nvd3控制成2行

javascript - React Router (v4) 适用于页面重新加载,但不会通过 <Link/> 触发 UI 事件

javascript - ng2-bootstrap-modal 在 webpack 编译后不起作用

safari - 如何在 Safari 7 中切换源映射?

twitter-bootstrap-3 - Bootstrap 3.x 中的 .map 文件有什么用?

javascript - opentok-react-native 订阅者使 Android 应用程序崩溃

javascript - Canvas 中的径向渐变不会正确淡化

typescript - Webpack 4 加载库 Sourcemap