Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用新的BrowserifyAPI?_Javascript_Gulp_Browserify - Fatal编程技术网

Javascript 如何使用新的BrowserifyAPI?

Javascript 如何使用新的BrowserifyAPI?,javascript,gulp,browserify,Javascript,Gulp,Browserify,我目前正在从事一个ReactJS项目,因此我决定使用Gulp设置一个工作流来管理uglification、minification、JSX转换等 问题是BrowserifyAPI不断变化(文档没有经常更新),我们不能再使用bundle()中的选项 正如日志错误消息所述:“将所有选项参数移动到Browserify()构造函数” 但并非我使用的所有选项都可用,以下是我目前的代码: var gulp = require('gulp'); var gutil = require('gulp-util')

我目前正在从事一个ReactJS项目,因此我决定使用Gulp设置一个工作流来管理uglification、minification、JSX转换等

问题是BrowserifyAPI不断变化(文档没有经常更新),我们不能再使用bundle()中的选项

正如日志错误消息所述:“将所有选项参数移动到Browserify()构造函数” 但并非我使用的所有选项都可用,以下是我目前的代码:

var gulp = require('gulp');
var gutil = require('gulp-util');
var streamify = require('gulp-streamify');
var source = require('vinyl-source-stream');
var del = require('del');

prod = gutil.env.prod;

gulp.task('cleanjs', function(cb) {
  del(['build/js'], cb);
});

gulp.task('cleancss', function(cb) {
  del(['build/css'], cb);
});

gulp.task('sass', ['cleancss'], function() {
    var sass = require('gulp-sass');
    var concat = require('gulp-concat');

    gulp.src(['./src/**/.{css, scss}'])
        .pipe(sass())
        .pipe(concat('livemap.min.css'))
        .pipe(gulp.dest('./build/css'));
});

gulp.task('watch', function() {
    var watchify = require('watchify');
    var reactify = require('reactify');
    var browserify = require('browserify');
    var uglify = require('gulp-uglify');
    var bundler = watchify(browserify('./src/main.js', {
        cache: {},
        packageCache: {},
        fullPaths: true,
        transform: ['reactify'],
        debug: true,
    }));

     function rebundle() {
        var t = Date.now();
        gutil.log('Starting Watchify rebundle');
        return bundler.bundle()
        .pipe(source('bundle.js'))
        .pipe(prod ? streamify(uglify()) : gutil.noop())
        .pipe(gulp.dest('./build/js'))
        .on('end', function () {
            gutil.log('Finished bundling after:', gutil.colors.magenta(Date.now() - t + ' ms'));
        });
    }

    bundler.on('update', rebundle);

    gulp.watch('./src/**/*.{css, scss', ['sass']);

    return rebundle();
});

gulp.task('default', ['watch']);
欢迎任何帮助

我是这样做的:

var options = watchify.args;
options.debug = true;    
var bundler = browserify(options);
bundler.add("./public/scripts/app.js");
bundler.transform("reactify");

var watcher = watchify(bundler);
.
.
.