我应该'浏览'所有文件然后`concat`他们为我的gulp管道?还是逆?

时间:2015-11-05 20:29:58

标签: javascript gulp browserify babeljs

我开始在index.js中打开一个Javascript客户端库,并在顶部添加一个我正在进行require的文件。

...
require("./other_file")
...

然后我的gulpfile.js看起来像这样:

function compile(watch) {
  var bundler = watchify(browserify({
    entries: ['./src/index.js'],
    debug: true,
    sourceType: module,
  })
  .transform(babelify));

function rebundle() {
    bundler.bundle()
      .on('error', function(err) { console.error(err); this.emit('end'); })
      .pipe(source('build.js'))
      .pipe(buffer())
      .pipe(sourcemaps.init({ loadMaps: true }))
      .pipe(sourcemaps.write('./'))
      .pipe(gulp.dest('./dist'));
  }

  if (watch) {
    bundler.on('update', function() {
      console.log('-> bundling...');
      rebundle();
    });
  }

  rebundle();
}

我不确定我是否应该concat我需要的所有文件,然后浏览更大的concat文件或仅browserify主文件而require会起作用吗?

(我跟着the gulpfile example here

1 个答案:

答案 0 :(得分:6)

没有必要连接。 Browserify将跟踪您需要的所有模块并构建一个捆绑包。

  

browserify将递归分析您应用中的所有require()调用,以便构建一个可以在单个标记中提供给浏览器的包。

source