Подтвердить что ты не робот

Ошибка: не удалось найти предустановленный "es2015" относительно каталога "/Users/username"

При попытке использовать gulp -babel:

появляется следующая ошибка:

Ошибка: не удалось найти предустановленный "es2015" относительно каталога "/Users/имя пользователя"

У меня есть предустановка es2015, установленная глобально и локально, поэтому не вижу, почему это будет проблемой.

Ниже приведена настройка gulp и package.json.

var babel = require('gulp-babel');
var es2015 = require('babel-preset-es2015');

gulp.task('babel', function() {
    return gulp.src('./app/main.js')
    .pipe(babel({
        presets: [es2015]
    }))
    .pipe(gulp.dest('dist'));
});

Package.json

  "devDependencies": {
    "babel-preset-es2015": "^6.3.13",
    "babel-preset-es2015-node5": "^1.1.1",
    "browser-sync": "^2.11.0",
    "gulp": "^3.9.0",
    "gulp-babel": "^6.1.1",
    "gulp-stylus": "^2.2.0"
  }

Я использую node v5.1.0 и babel v6.4.0

Вот вывод терминала

вывод терминалов

4b9b3361

Ответ 1

Вам нужно установить babel-preset-es2015:

Пример использования CLI:

npm install babel-cli babel-preset-es2015

Ответ 2

"es2015" в:

    .pipe(babel({
        presets: ['es2015']
    }))

- это фактически путь, поэтому, если у вас нет предустановки в каталоге /Users/username/es 2015, вы должны указать именно на него, например:

.pipe(babel({
    presets: ['../../gulp/node_modules/babel-preset-es2015']
}))

это сработало для меня

Ответ 3

Я просто использовал этот точный gulpfile.js

var babel = require('gulp-babel');
var es2015 = require('babel-preset-es2015');
var gulp = require('gulp');

gulp.task('babel', function() {
    return gulp.src('./app/main.js')
    .pipe(babel({
        presets: [es2015]
    }))
    .pipe(gulp.dest('dist'));
});

и это сработало для меня. Я установил только babel, babel-preset-es2015 и gulp-babel.

Ответ 4

Я столкнулся с той же проблемой, и это произошло потому, что у меня был файл .babelrc в корне моей директории.

Чтобы исправить это, добавьте babelrc: false внутри параметров babel:

var babel = require('gulp-babel');

gulp.task('babel', function() {
    return gulp.src('./app/main.js')
    .pipe(babel({
        babelrc: false,
        presets: ['babel-preset-es2015']
    }))
    .pipe(gulp.dest('dist'));
});

Ответ 5

У меня была такая же проблема, и это второе предложение помогло мне заметить мою проблему и, возможно, это тоже твоя.

I npm install gulp-babel-es2015 затем не включил его в файл gulp вообще.

Тогда параметр babel({presets: ['es2015']}) - это просто строка, как показано в примерах здесь https://www.npmjs.com/package/gulp-babel.

Вот мой gulpfile.

var gulp = require('gulp'),
    babel = require('gulp-babel');

gulp.task('babelify', () => {
    gulp.src('js/*.js')
        .pipe(babel({
            presets: ['es2015']
        }))
    .pipe(gulp.dest('alljs'));
});

gulp.task('default', ['babelify']);

Ответ 6

Чтобы устранить эту проблему, вы должны удалить файл .babelrc(hidden) из каталога "/Users/username".

Ответ 7

Проверьте, есть ли файл .babelrc в корневой папке вашего проекта. Если не создать файл .babelrc и добавить следующее:

{
  "presets": ["es2015"]
}

Он исправил проблему.

Ответ 8

У меня просто был очень странный. Я установил все инструменты babel с помощью одной большой длинной команды npm install, и все было установлено без ошибок... кроме того, что она запускала ошибку, зарегистрированную в этом потоке, во время выполнения.

Я заметил, что версия была 0.0.0 в файле package.json, поэтому я снова запустил npm install --save-dev babel-preset-es2015, и он сработал и поместил ключ SECON в файл package.json:

   "devDependencies": {
     "babel-cli": "^6.24.1",
     "babel-core": "^6.24.1",
     "babel-polyfill": "^6.23.0",
     "babel-preset-es2015": "^6.24.1",
     "babel-preset-es2015": "0.0.0",
     "babel-preset-stage-2": "^6.24.1",
     "eslint": "^3.19.0"
   }

Я просто удалил неудачную запись, и она очистила эту ошибку relative to directory.