由于gulp-browserify模块已被列入黑名单,因此我尝试不使用gulp-browserify来重写gulpfile.js中的旧代码。

我已经用gulp-browserify完成了这项工作

var gulp = require('gulp'),
    browserify = require('gulp-browserify');

gulp.task('browserify', function() {
    return gulp.src('./lib/tssoft.commons.js')
        .pipe(browserify({
            ignore: ['jsdom']
        }))
        .pipe(gulp.dest('./dist/'))
});

如您所见,我告诉gulp-browserify在浏览器化过程中忽略require('jsdom')。

卸载gulp-browserify后,我安装了browserify模块并重写代码
var gulp = require('gulp'),
    browserify = require('browserify');

gulp.task('browserify', function() {
    var b = browserify();
    b.ignore('jsdom');
    b.add('./lib/tssoft.commons.js');
    return b.bundle()
        .pipe(gulp.dest('./dist/'));
});

并得到以下错误:“path.resolve的参数必须是字符串”。

最佳答案

几天前偶然发现了这个,您可以前往:

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

gulp.task('browserify', function() {
    var b = browserify();
    b.ignore('jsdom');
    var path = './lib/tssoft.commons.js';
    b.add(path);
    return b.bundle()
        .pipe(source(path))
        .pipe(gulp.dest('./dist/'));
});

关于javascript - 用gulp中的browserify忽略模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29562221/

10-12 15:37