Gulp,浏览使用react作为CommonJS不起作用.React未定义



我一直试图使用browserfy和gull将ReactJS捆绑为一个通用的JS模块,但每当我运行代码时,我都会收到一个React未定义错误,作为新手,我还没能找到正确的解决方案来解决这个错误。

以下是浏览的部分看起来像

gulp.task('build', function(){
  browserify({
    entries: [path.ENTRY_POINT],
    transform: [reactify],
  }).require('react')
    .bundle()
    .pipe(source(path.MINIFIED_OUT))
    .pipe(streamify(uglify(path.MINIFIED_OUT)))
    .pipe(gulp.dest(path.DEST_BUILD));
});

我已经检查了生成的捆绑文件,React是在页面底部定义的,不确定这是否意味着什么,但这就是我在app.js文件中调用React的方式。

    var React  = require('react');
    var Parent = require('./parent.js');
    React.render(<Parent />, document.getElementById('app'));

我需要做什么来解决这个问题?

在这个例子中,它包括构建文件上的react库,如果你想删除它,请使用browserfy shim。

Gulpfile.js(任务)

browserify('index.js', {
    debug: true,
    transform: ['babelify', 'reactify2']
  })
  .bundle()
  .pipe(source('app.js'))
  .pipe(gulp.dest('./build'));

package.json(devDependencies)

   "react": "^0.13.1",

最新更新