聚合物中是否存在错误跟踪方法?
问题是,显然硫化和多重建造过程无法提供任何源图(如果我错了请纠正我)。这意味着即使我将使用全局window.onerror
函数在硫化的java脚本代码中捕获异常,我也无法将其映射回来并在源文件中找到错误的实际位置。
任何解决方案/解决方法都将受到高度赞赏。
答案 0 :(得分:0)
以下是我可以做些什么的想法。请提供您的想法和解决方案。此解决方案未经过测试。
根据https://github.com/PolymerLabs/polybuild polybuild工具与:
相同vulcanize --inline-css --inline-scripts --strip-comments index.html | polyclean | crisper --html index.build.html --js index.build.js
顺序是:
1)硫化产生一个html格式的文件
2)polyclean使用uglifyjs internaly并执行一些清洁
3)crisper用于将已经丑化和缩小的js与html分开
据我所知,uglifyjs不使用html文件作为输入,因此polyclean手动切割部分js代码,将其放入uglifyjs并粘贴回来(我希望我能正确理解polyclean是如何工作的) 。这就是为什么在这种情况下创建源地图是无用的。 我的想法是改变polyclean和crisper的顺序并修改polyclean以允许使用uglifyjs2的外部选项:
新订单:
1)硫化产生一个html格式的文件
2)crisper用于将格式化的js与html分开
3)polyclean使用uglifyjs internaly并执行一些清理(在这种情况下,我们需要在js和html文件上使用)
首先,您将拥有html文件和格式化的js文件,然后才能使用--source-map和--source-map-include-sources选项使用uglifyjs2(从polyclean或独立调用?)。 现在,您可以使用生成的源映射来跟踪您的错误,该源映射已包含在步骤#2中生成的js文件的格式化副本。