Gulp, using current filename in `pipe()` function

I'm trying to render each file in my gulp source files with it's own json file, but I can't figure out how to access the current filename in the pipe function.

var gulp = require('gulp');
var handlebars = require('handlebars');
var gulpHandlebars = require('gulp-compile-handlebars');

gulp.task('compile-with-sample-data', function () {
  var options = {}
  return gulp.src('./src/**/*.html')
    .pipe(gulpHandlebars({ data: require('./data/' + filename +'.json') }, options))
    .pipe(gulp.dest('./build/'));

});

Where I can get it to work with the same file each time by just using require('./data/orders-complete.json') :

var gulp = require('gulp');
var handlebars = require('handlebars');
var gulpHandlebars = require('gulp-compile-handlebars');

gulp.task('compile-with-sample-data', function () {
  var options = {}
  return gulp.src('./src/**/*.html')
    .pipe(gulpHandlebars({ data: require('./data/orders-complete.json') }, options))
    .pipe(gulp.dest('./build/'));

});

It's not clear how I would do this.


使用gulp-tap,它可以让你获得文件名,甚至可以改变下游管道。

链接地址: http://www.djcxy.com/p/88366.html

上一篇: 获取Spacemacs / Emacs GUI版本以识别nix

下一篇: gulp,在`pipe()`函数中使用当前文件名