【问题标题】:preprocess js before browserify在browserify之前预处理js
【发布时间】:2015-05-30 02:32:40
【问题描述】:

如何设置 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/'));

【问题讨论】:

  • 看起来那个转换器正在使用我可以理解的非常简单的 browserify-transform-tools。我想我可以自行解决它,使其可配置为仅处理我需要的文件。

标签: javascript gulp browserify


【解决方案1】:

毕竟我最终使用了这个 browserify 转换 - 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'));
        });
};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-25
    • 1970-01-01
    • 1970-01-01
    • 2019-02-08
    • 2011-01-01
    • 1970-01-01
    • 2015-12-05
    • 1970-01-01
    相关资源
    最近更新 更多