javascript - Browserify + gulp 变得很慢

标签 javascript gulp browserify

每当 js 文件发生更改时,我们都会使用 gulp 和 browserify 来创建项目的构建。随着项目的发展,这个过程变得异常缓慢,从 200 毫秒 -> 约 5 秒。该项目有 69 个目录、173 个文件,最大深度为 4 个文件夹。我们正在应用一些变换。这是我们的构建代码。

var buildJS = function (entryPoint, name, cb) {
    var browserify = require('browserify');
    var uglify = require('gulp-uglify');
    var source = require('vinyl-source-stream');
    var buffer = require('vinyl-buffer');
    var reactify = require('reactify');
    var literalify = require('literalify');
    var brfs = require('brfs');

    browserify()
        .require(entryPoint + '/' + name + '.jsx')
        .transform({
           global: true
        }, reactify)
        .transform({
           global: true
        }, brfs)
        .transform({
           global: true
        }, literalify.configure(literalifyConfig))
        .external(config.libs)
        .bundle({
            debug: config.DEV,
            //detectGlobals : false
        })
        .on('error', handleError)
        .pipe(source('bundle.js'))
        .pipe(buffer())
        .pipe(gulpIf(!config.DEV, uglify()))
        .pipe(gulp.dest(config.buildPath + '/' + name))
        .on('finish', cb)
};

根据我们的项目规模,这只是正常行为吗?还是我们做错了什么?

最佳答案

那是因为 browserify 总是重新编译所有内容。如果您想要良好的性能,您应该使用增量构建。 我专门为此开发了一个 gulp 插件:https://github.com/ngryman/gulp-bro .

关于javascript - Browserify + gulp 变得很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26411902/

相关文章:

gulp-changed/gulp-newer + gulp-rename 不起作用

javascript - Browserify 构建停止了 process.versions.node 上的所有返回错误

browserify - 如何使用 Browserify 构建 mapbox-gl.js?

javascript - 使用 browserify 创建通用函数

javascript - 什么放在 jQuery(document).ready(function()

javascript - 监听来自动态创建的组件的事件

javascript - 如何用JS制作无限跑马灯?

javascript - Gulp 无法定位@导入文件 nib.style

gulp - 使用 Gulp Jshint 显示错误总数

javascript - jQuery 问题 'else'