Node.js NodeJS 5.x+;Babel 6异步/等待调试

Node.js NodeJS 5.x+;Babel 6异步/等待调试,node.js,babeljs,source-maps,ecmascript-2016,Node.js,Babeljs,Source Maps,Ecmascript 2016,当我尝试使用transform async to generatorbabel插件使用async/await调试代码时,我的调试体验参差不齐(尽管我几乎尝试了其他所有组合) 本质上,带有wait的代码将跳到方法的末尾,然后进入已编译的代码 关于结果也就不足为奇了,但是源地图应该处理这个问题,对吗 我已经尝试过各种设置(需要hook/babel节点/babel cli/gulp babel)并得到了相同的问题。我使用的是:Node5.3.0和Babel6.3 我已经在上创建了一个演示项目。我也把这

当我尝试使用
transform async to generator
babel插件使用async/await调试代码时,我的调试体验参差不齐(尽管我几乎尝试了其他所有组合)

本质上,带有wait的代码将跳到方法的末尾,然后进入已编译的代码

关于结果也就不足为奇了,但是源地图应该处理这个问题,对吗

我已经尝试过各种设置(需要hook/babel节点/babel cli/gulp babel)并得到了相同的问题。我使用的是:Node5.3.0和Babel6.3

我已经在上创建了一个演示项目。我也把这个问题贴在了网上

编辑:
这个问题是向源地图项目提出的,因为我觉得这不是一个巴别塔问题。团队确认该问题为调试器问题。有关更多详细信息,请参见:

在节点4+中本机引入了
async/await
,这不再是一个问题。

所说的“跳过”是指您不能在该行上放置断点或使用调试器跳过它,但
fart()
确实会被调用,对吗?
export class Cat {
    async meow(){
        let p = await this.bat(); // <<<< this line runs
        this.fart(); // <<<< then skips this line
        return p;  // <<<< and goes to this line ( always last line in fn )
    }
}
meow() {
    var _this = this;

    return _asyncToGenerator(function* () {
        let p = yield _this.bat();
        _this.fart();
        return p;
    })();
}