Reactify,Browserify和Gulp:TypeError:Object#<Transform>没有方法'transform'

Gui*_*nge 1 javascript browserify reactjs gulp

这是通过命令行执行时的错误gulp scripts:

TypeError:Object#<Transform>没有方法'transform'

这是gulpfile.js:

var gulp            = require ('gulp')
    , browserify    = require ('gulp-browserify')
    , source        = require ('vinyl-source-stream')
    , reactify      = require ('reactify');

gulp.task('scripts', function () {
  browserify('./assets/js/main.js')
    .transform(reactify)
    .bundle()
    .pipe(source('main.js'))
    .pipe(gulp.dest('./static/js'));
});

gulp.task('default', ['scripts']);
Run Code Online (Sandbox Code Playgroud)

我真的不知道如何解决这个问题.我在互联网上搜索,但我发现的任何内容都接近我的具体错误.

Bal*_*zar 5

您的任务有一些问题.

首先,您必须使用gulp.src获取main.js文件.其次,transformgulp-browserify的一个选项,而不是你想要管道你的流,同样的bundle.

gulp.task('scripts', function () {
  return gulp.src('./assets/js/main.js')
    .pipe(browserify({
      transform: [reactify]
    }))
    .pipe(gulp.dest('./static/js'));
});
Run Code Online (Sandbox Code Playgroud)

如果你想要的东西,更像是你的第一次尝试,就不需要吞掉-browserify,但browserify独自一人,还有如何使用一个相当不错的文章ReactJsBrowserify大口喝 这里.