2015-12-06 2 views
0

Я обновил последнюю версию babel v6. Однако я заметил, что использование плагина transform-es2015-classes с отключенным режимом (https://github.com/bkonkle/babel-preset-es2015-loose/blob/master/index.js#L8) прерывает функции async/await. Например:Babel v6 - плагин transform-es2015-classes в режиме сырого режима SyntaxError: Неожиданный идентификатор для async/wait

function _asyncFunc (value) { 
    return new Promise((resolve) => { 
    setTimeout(() => resolve(value), 10); 
    }); 
} 

class TestActions { 
    async asyncAction(returnValue) { 
    const result = await _asyncFunc(returnValue); // exception here 
    return result; 
    } 
} 

Разрывы с распущенными по этой линии:

var result = await _asyncFunc(returnValue); ^^^^^^^^^^ SyntaxError: Unexpected identifier

Babelrc выглядит следующим образом (также я использую регенератор выполнения, импортируя его в точке входа import 'babel-runtime/regenerator/runtime';):

{ 
    "presets": [ 
    "es2015-loose", 
    "react", 
    "stage-0" 
    ] 
} 

Мне нужно использовать свободный режим из-за этой ошибки Babel - https://phabricator.babeljs.io/T3041

Любые обходные пути?

+0

Я не знаю, если я бы помочь вам, обратитесь к нему [с использованием-es7- asyncawait-сегодня-с-babel.html] (http://masnun.com/2015/11/11/using-es7-asyncawait-today-with-babel.html). –

+0

это была ошибка в Вавилоне, уже решена .. – Kosmetika

ответ