在browserify之前预处理js

时间:2015-05-30 02:32:41

标签: javascript gulp browserify

如何设置gulp-replace任务,以便在browserify之前修改js文件?我需要以某种方式管它进入它,但与api挣扎。我也不想使用browserify变换器(例如:preprocessify),因为我只需要替换单个文件(env属性),而不是整个包。

gulp.task('js', function() { 
// run gulp-replace here
var b =  browserify(entryPoint) 
  .bundle() 
  .pipe(source('bundle.js')) 
  .pipe(gulp.dest('./src/'));

1 个答案:

答案 0 :(得分:1)

毕竟我最终使用了这个浏览器转换 - preprocessify。没有简单的方法可以将文件限制为唯一的集合,只能通过文件扩展名。转换使用preprocess库,它为我提供了足够的功能来解决我的用例。

以下是预处理的内容:

var transformTools = require('browserify-transform-tools');
var pp = require('preprocess');

module.exports = function(preprocessContext, options) {
  options = options || {includeExtensions: [".js"]};
  return transformTools.makeStringTransform("preprocessify", options,
        function (src, transformOptions, done) {
            done(null, pp.preprocess(src, preprocessContext, 'js'));
        });
};