欢迎!请查看关于页面以了解该功能的工作方式。
Google Closure现在(至少从命令行输入)包含了对源映射合并和内联源映射生成的全面支持。我们应该调查这一功能的可重用性。
评论由:darwin 提出
调查了一点点,分享我所学到的东西
--source_map_input
(链接:1) https://github.com/google/closure-compiler/issues/1360#issuecomment-170716968(链接:2) https://github.com/google/closure-compiler/pull/1971(链接:3) https://github.com/google/closure-compiler/pull/2008(链接:4) https://github.com/google/closure-compiler/wiki/Source-Maps(链接:5) https://github.com/google/closure-compiler/pull/2129
Closure编译器也能够理解使用输入JavaScript文件中的data URL的内联源映射(链接:1)。
\-\-parse_inline_source_maps=false
\-\-source_map_input
sourceMappingURL=data
(链接:1)https://github.com/google/closure-compiler/pull/1982(链接:2)https://github.com/google/closure-compiler/pull/1982#issuecomment-243249065
评论者:thheller
关于在shadow-build中添加对该特性的支持,有一段时间了。它不需要内联源映射即可工作。
代码可在此处找到:https://github.com/thheller/shadow-build/blob/master/src/main/shadow/cljs/closure.clj
相关信息在{{Compiler}}的{{.addInputSourceMap}}和{{CompilerOptions}}的{{.setApplyInputSourceMaps}}。
如果一切配置得当,Closure显示的警告中将包含一个指向CLJS文件的“最初位于:”位置。
Closure在生成{{:advanced}}构建的源映射时也将使用输入源映射,因此CLJS目前进行的手动合并变得不再必要。源映射似乎也更准确。在输入源映射之前,我有一些源映射偏离了几行的问题,但这可能归因于我在shadow-build中源映射处理的不正确。