У меня есть процесс сборки с использованием gulp и babel, но babel бросает мне эти странные дубликаты имен функций во всем моем приложении.Бульварные дублированные имена функций
Ошибка в Chrome является: ReferenceError: changeScale is not defined
Исходный код:
changeScale = function(value) {
if (value >= 1000000) return value/1000000 + 'M';
if (value >= 1000) return value/1000 + 'k';
return value;
};
код после глотком и столпотворение:
changeScale = function changeScale(value) {
if (value >= 1000000) return value/1000000 + 'M';
if (value >= 1000) return value/1000 + 'k';
return value;
};
Обратите внимание на повторяющееся имя функции?
Мой глоток задача:
var gulp = require('gulp');
var gutil = require('gulp-util');
var bower = require('bower');
var babel = require("gulp-babel");
var concat = require('gulp-concat');
gulp.task('js', function() {
gulp.src('./www/app/**/*.js')
.pipe(babel())
.pipe(concat('app.js')).on('error', errorHandler)
.pipe(gulp.dest('./www/js/'));
});
И мой .babelrc файл: { "presets": ["es2015"] }
Они не странные, они ES6: все анонимные выражения функций, присваиваемые чему-то, получают имя. И нет, они не являются причиной вашей ошибки. Покажите нам, где вы пытаетесь вызвать эту функцию, и в какой строке вы получите это исключение. – Bergi