为什么“gulp-jest”失败并显示:“请使用 --harmony 标志运行节点!”?

IT技术 gulp reactjs jestjs gulp-jest
2021-05-16 23:01:23

运行时出现以下错误gulp test

Error: Please run node with the --harmony flag!

这是我的吞咽任务:

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 testgulp test具有相同的配置对象:

{
  rootDir: 'src',
  scriptPreprocessor: '../node_modules/6to5-jest',
  unmockedModulePathPatterns: [ 'react' ]
}

我究竟做错了什么?

2个回答

据我所知,错误是从jest-cli.

您不明白的原因npm test是您可能将 npm 配置为直接运行 jest bin 脚本,该脚本使用协调以编程方式设置--harmony标志。

您可以通过安装协调并放入require('harmonize')()您的 gulpfile来修复

这是 中的一个错误gulp-eslint,现在在 0.3.0 版中修复。