Chrome未在内联脚本代码中请求源地图

时间:2017-03-20 20:28:17

标签: javascript web browser source-maps gulp-sourcemaps

Chrome不会为我们的HTML中包含的脚本加载我们的源地图:

<script type="text/javascript">!function t(n,e,r){ /* more code */}()
//# sourceMappingURL=public/js/edit-before.js.map
</script></body>

我知道Chrome不会请求源地图,因为我将服务器设置为记录所有请求并检查Chrome网络控制台。我验证了源地图的路径是正确的,浏览器只是没有点击它。

Chrome应该在script代码中为JS加载源代码?如果是这样,我做错了什么?

1 个答案:

答案 0 :(得分:0)

对我来说,它目前可以在Chrome浏览器中运行(也许直到提出问题时才开始),但仍不能在Firefox中使用。但是路径必须是正确的,在这种情况下,是相对于执行脚本标签的页面的绝对URL或相对URL!

因此,具有public/js/edit-before.js.map之类的路径和/home/index.html之类的页面将导致/home/public/js/edit-before.js.map。想象一下,如果您在/blog/2019/01/01/12345/article.html之类的页面上使用脚本标签会发生什么。因此,最好使用https://example.com/public/js/edit-before.js.map

通常,您必须在浏览器中启用源地图才能看到它们,如此处https://stackoverflow.com/a/37190189/2590616所述。