我正在尝试将gullow babel与gullow mocha一起使用,如下所示:
var mocha = require('gulp-mocha');
var babel = require('gulp-babel');
gulp.task('test', function() {
return gulp.src('test/*.js', {read: false})
.pipe(babel({presets: ['es2015']}))
.pipe(mocha());
});
但这似乎不起作用,因为出现了这样的错误
(function (exports, require, module, __filename, __dirname) { import {assert}
^^^^^^
Unexpected reserved word
我在这里记录了这个案例https://github.com/tnguyen14/babel-gulp-mocha-test
我不确定我是不是做错了什么?任何帮助都将不胜感激。
编辑:请使用节点0.12尝试此操作。Node 4.x只会工作,但不会证明什么,因为它在这里的测试中已经支持ES2015方法,即endsWith
。
我缺少的是babel-polyfill
。es2015
预设不提供新的ES2015功能,它只是帮助使用更新的语法。
添加polyfill解决了这个问题。点击此处查看此问题的更多详细信息https://phabricator.babeljs.io/T2967
它与以下内容结合使用,并与.babelrc:结合使用
var gulp = require('gulp');
var babel = require('gulp-babel');
var mocha = require('gulp-mocha');
require("babel-core/register");
gulp.task('test', function () {
return gulp.src('test/*.js', {read: false})
.pipe(babel())
.pipe(mocha({
ui: 'tdd'
}));
});