运行gulp test
时出现以下错误:
Error: Please run node with the --harmony flag!
这是我的gulp任务:
var jest = require('gulp-jest');
gulp.task('test', function() {
return gulp.src('src/**/__tests__').pipe(jest({
rootDir: 'src',
scriptPreprocessor: '../node_modules/6to5-jest',
unmockedModulePathPatterns: [ 'react' ]
}));
});
要重现:https://github.com/SEEK-Jobs/react-playground
请注意npm test
正常工作(测试按预期失败),但gulp test
因上述错误而失败。 npm test
和gulp test
都具有相同的配置对象:
{
rootDir: 'src',
scriptPreprocessor: '../node_modules/6to5-jest',
unmockedModulePathPatterns: [ 'react' ]
}
我做错了什么?
答案 0 :(得分:7)
据我所知,错误是从jest-cli
抛出的。
您没有使用npm test
获取它的原因是您可能已将npm配置为直接运行jest bin脚本,该脚本使用harmonize以编程方式设置--harmony
标志。 / p>
您可以通过安装harmonize并将require('harmonize')()
放入gulpfile来解决。
答案 1 :(得分:1)
这是gulp-eslint
中的一个错误,现在修复版本为0.3.0。