上面的 ES7 代码,在 sencha app build 后变成下面的 ES5 代码
可以看到 me.callParent 被包在了一个 function($jscomp$generator$context) {} 里面。
而 callParent 方法的逻辑如下图。
非 async 成员函数,method = this.callParent.caller 指向的是当前类的 callParent 方法。method.$owner 就是当前类
而 async 成员函数 转换的 ES5 代码,method = this.callParent.caller 却变成了 function($jscomp$generator$context) {} 方法。method.$owner 是 undefined,所以执行会出错。