nodejs下babel编译es6后异常定位助手:source-map-support

使用es6甚至es7写代码是愉快的,然而由于兼容性原因,我们不得不使用babel把es6代码转成es5的,但这样会有一个问题,那就是出现错误的时候错误栈根据编译后代码而不是es6代码中的位置,这就给定位问题带来一定的麻烦。

浏览器是支持source maps的,babel也提供了编译生成source maps功能,但node不是浏览器,原生不支持source maps,但是我们可以通过第三方包来实现这个功能。

这里就找到了一个叫做 source-map-support 的包,只需要在es6的脚本顶部加上:

require('source-map-support').install();
然后babel编译的时候加上 -s 参数生成source maps即可,尝试一下抛出异常,会发现 error stack中的文件位置成功被替换成了es6源代码中的位置。

-完-

你可能感兴趣的:(nodejs)