尝试在Babel 6中编译这段代码
function A() {
return async function B() {
some.thing = C;
async function C() {}
}
}
async function C
应该被吊起来,对吗?它确实在babel's online repl site:
...
C = function C() {
...
};
some.thing = C;
...
但是在我的系统上,它编译的方式不同(并且不正确):
...
some.thing = C;
C = (function () {
var ref = _asyncToGenerator(regeneratorRuntime.mark(function _callee() {
...
此处C
被定义为变量且未被提升,导致some.thing
未定义
为什么我的系统出现这种差异?我正在使用Babel 6.3和presets: ['es2015', 'stage-0']