【问题标题】:How do web browsers find a source map for a JavaScript file?Web 浏览器如何找到 JavaScript 文件的源映射?
【发布时间】:2014-12-16 20:51:04
【问题描述】:

following article 解释说,为了找到 JavaScript 文件(例如 jQuery)的源映射,Web 浏览器会在 JavaScript 代码内部查找包含嵌入在 JavaScript 注释中的 sourceMappingURL 指令的行.例如,jQuery 1.9.0 minified 文件在文件末尾包含这样的指令。然而,较新的jQuery 1.11.1 minified 发行版不包含这样的指令,但jQuery 1.11.1 map file 也与这个(最终稳定的jQuery 1)版本一起分发。那么网络浏览器如何找到缩小文件的地图文件。

我猜 Web 浏览器寻找 sourceMappingURL 指令的约定已被删除,取而代之的是遵循寻找同名文件的命名约定,将 .js 替换为 .min。这是怎么回事?

根据最近发布的 Firefox 开发者版的文档,这种浏览器似乎仍在寻找 sourceMappingURL 指令。

谢谢。

【问题讨论】:

    标签: javascript jquery html conventions map-files


    【解决方案1】:

    JQuery blog 中描述了从最新版本中删除源映射的原因

    此版本在缩小版中不包含 sourcemap 注释 文件。 源地图已被证明是一个非常有问题和令人费解的 给开发人员的事情,催生了数百名困惑的开发人员 StackOverflow 之类的论坛,并导致一些人认为 jQuery 本身就是 坏了。

    我们仍将生成和分发源地图,但您会 需要在末尾添加适当的 sourcemap 注释 如果浏览器不支持手动关联地图,则缩小文件 文件(目前没有)。如果您使用生成自己的 jQuery 文件 自定义构建过程,源映射注释将出现在 缩小文件并生成地图;你可以把它留在里面 使用 sourcemaps 或编辑它并完全忽略地图文件。

    我们希望在未来恢复并改进对源地图的支持,但是 目前,设计和实现似乎都不合适 对于像 jQuery 这样的情况,有广泛分布的文件 在 CDN 上。我们希望源地图(以及支持它们的浏览器) 优雅地处理文件重命名或丢失文件等情况。看 我们的错误票以获取更多信息。

    【讨论】:

    • 好的。由于开发团队对浏览器对源地图的支持不满意,当前的 jQuery 实现缺少该功能。谢谢。
    • 嗯,不是真的。如果不使用源映射,这更多地与人们对源映射的误解以及由控制台中的 404 消息引起的混淆有关。因此上面的堆栈溢出参考。
    • 这么有用的功能真可惜。我希望这个问题能很快得到解决。
    猜你喜欢
    • 2015-12-23
    • 2013-05-31
    • 1970-01-01
    • 2017-01-18
    • 2021-08-11
    • 2014-03-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多