Я использую параметр ES6 остальное в простейшим образом:ES6 параметр остальное не работает с Вавилонской
function func(a, ...b) {
for (var i = 0; i < b.length; i += 2) {
console.log(b[i], b[i + 1]);
}
}
Я установил babel-preset-es2015
, и мой .babelrc
файл просто имеет:
{
"presets": ["es2015"]
}
Как ни странно, в результате чего выход:
"use strict";
function func(a) {
for (var i = 0; i < arguments.length; i += 2) {
console.log(arguments[i], arguments[i + 1]);
}
}
Я подал ошибку в https://phabricator.babeljs.io/T7000, но я очень обеспокоен, так как это второй раз, когда у меня действительно был базовый ES6, который неправильно перекосил с помощью Babel 6. Разве моя настройка нарушена? Является ли Babel 6 документированным где-то нестабильным/альфа? Или этот очень популярный модуль действительно так плох? Существуют ли какие-либо альтернативные трансиляторы ES6, написанные с использованием строгости компилятора и всеобъемлющих наборов тестов, которые можно было бы безопасно использовать?
Похоже, что что-то может быть неправильно с вашей настройкой. Я запускал babel через ваш пример кода и получил [выход отличается от вашего] (https://gist.github.com/leoetlino/0edf49ae631951132069). У меня есть es2015 и stage-1 в качестве пресетов, но с 1-го этапа или без него не должно иметь значения. –
Интересно. Я использую '6.3.13' (последний); вы используете последние? Или, может быть, «этап-1» необходим? – Jacob
[email protected], [email protected], [email protected] Остальной модуль также является 6.3.13 ([email protected] согласно списку npm). –