错误:无法find相对于目录“/ Users / username”的预设“es2015”

尝试使用gulp-babel时出现以下错误:

错误:无法find相对于目录“/ Users / username”的预设“es2015”

我有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" } 

我正在使用节点v5.1.0和babel v6.4.0

这是terminal输出

terminal输出

你只需要安装babel-preset-es2015

CLI使用示例:

 npm install babel-cli babel-preset-es2015 

在“es2015”中:

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

实际上是一个path – 所以如果你没有在/ Users / username / es2015目录中的预设,你必须准确地指向它,例如:

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

它为我工作

我只是用了这个确切的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')); }); 

它为我工作。 我只安装了babelbabel-preset-es2015babel-preset-es2015 gulp-babel

我遇到了同样的问题,这是因为我的根目录中有一个.babelrc文件。

要解决这个问题,请在babel选项中添加babelrc: false

 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')); }); 

我有同样的问题,这第二个build议帮助我注意到我的问题,也许这也是你的问题。

npm install gulp-babel-es2015然后根本没有包含在gulpfile中。

然后, babel({presets: ['es2015']})选项只是一个string,如https://www.npmjs.com/package/gulp-babel中的示例所示。;

这是我的大文件。

 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']); 

检查您的项目的根文件夹中是否有.babelrc文件。 如果不创build.babelrc文件并添加以下内容:

 { "presets": ["es2015"] } 

它解决了这个问题。

要解决此问题,您应该从“/ Users / username”目录中删除.babelrc(隐藏)文件。

我只是有一个非常奇怪的。 我用一个很长的npm install命令安装了所有的babel工具,并且安装了所有没有错误的东西…除了它在运行时抛出了在这个线程中logging的错误。

我注意到package.json文件中的版本是0.0.0,所以我再次运行了npm install --save-dev babel-preset-es2015 ,它工作并在我的package.json文件中放置了一个SECOND键:

  "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错误。

Interesting Posts