gulp browserify + reactify不创建bundle

时间:2015-10-18 09:15:59

标签: reactjs gulp reactify

当我运行gulp时,我得到一个"更新!"并且"更新!"保存main.js后记录,但是没有建立捆绑

gulpfile.js

var watchify = require('watchify');
var reactify = require('reactify'); 
var concat = require('gulp-concat');
var util = require('gulp-util');

gulp.task('browserify', function() {
    var bundler = browserify({
        entries: ['./dist/main.js'], // Only need initial file, browserify finds the deps
        transform: [reactify], // We want to convert JSX to normal javascript
        debug: true, // Gives us sourcemapping
        cache: {}, packageCache: {}, fullPaths: true // Requirement of watchify
    });
    var watcher  = watchify(bundler);

    return watcher
    .on('update', function () { // When any files update
        var updateStart = Date.now();
        console.log('Updating!');
        watcher.bundle() // Create new bundle that uses the cache for high performance
        .pipe(source('main.js'))
        .on('error', util.log)
    // This is where you add uglifying etc.
        .pipe(gulp.dest('/build/'));
        console.log('Updated!', (Date.now() - updateStart) + 'ms');
    })
    .on('error', util.log)
    .bundle() // Create the initial bundle when starting the task
    .pipe(source('main.js'))
    .pipe(gulp.dest('/build/'))
    .on('error', util.log);
});

// I added this so that you see how to run two watch tasks
gulp.task('css', function () {
    gulp.watch('styles/**/*.css', function () {
        return gulp.src('styles/**/*.css')
        .pipe(concat('main.css'))
        .pipe(gulp.dest('build/'));
    });
});

// Just running the two tasks
gulp.task('default', ['browserify', 'css']);

我的文件结构是

/build  
/dist   
 -index.html  
 -main.js 
/node_modules  
/styles 
gulpfile.js

我没有发现任何错误,我现在完全迷失了。我尝试过更改目录并重新加载所有内容,但没有任何作用。

1 个答案:

答案 0 :(得分:1)

将包含gulp.dest('/build/')的行更新为gulp.dest(__dirname + '/build/')。目前您的文件位于drive_root_dir / build / main.js