【问题标题】:Does Chrome support multiple modules/sourceMappingURLs on a single javascript urlChrome 是否支持单个 javascript url 上的多个模块/sourceMappingURL
【发布时间】:2012-09-16 02:41:03
【问题描述】:

我一直在尝试 Chrome 中的 Source Maps 功能,但发现它不支持将单个 javascript 资源附加到包含多个模块的脚本标签,该标签包含连接在一起的多个模块以及 //@sourceMappingURL 注释分隔 每个一个

第一个映射已连接,我在调试器中看到关联的模块源,但所有其他的都被忽略了。

我希望当多个模块被缩小并连接在一起时,这将是一个注释要求

是否支持场景?

【问题讨论】:

    标签: javascript google-chrome-devtools source-maps


    【解决方案1】:

    是的,它受支持。您可以使用“sections”字段为部分脚本提供源映射。请参阅规范的Index map: supporting post processing 部分。

    【讨论】:

    • 我可能会误解“部分”功能,但我认为这不能回答问题。 “Sections”并没有改变,这一切都通过 1 个主要的 sourceMappingURL。澄清一下:我所追求的(如果可能的话)是拥有一个包含多个 javascript 块的资源,每个资源都有自己的//@sourceMappingURL
    • @Pavel 您能否提供此功能的工作示例的链接?我无法上班。
    【解决方案2】:

    Chrome DevTools 不支持在单个文件中定义多个 sourceMappingURL。 (不幸的是,Pavel 2012 年的回答是不正确的。) 与此相关的是,Chrome 也不支持在一个文件中包含多个 sourceURL。

    链接的规范章节引用了一个sections 数组,但它是在一个处理整个文件的父映射中定义的。

    因此,如果您的代码如下所示:

    // ... code()
    
    }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
    //# sourceMappingURL=data:application/json;charset:utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3V…  
    
    },{"./bufferClone":99}],122:[function(require,module,exports){
    
    // ... code()
    
    }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
    //# sourceMappingURL=data:application/json;charset:utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kd…
    }
    

    .. 那么您需要调整编译管道,以便最终捆绑文件只有一个映射。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-28
      • 1970-01-01
      • 1970-01-01
      • 2011-11-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多