gulp.task('jade:prod:DE_EN', function () {
return gulp.src('./views/*.jade')
.pipe(tap(function(file) {
console.log(path.basename(file.path))
}))
.pipe(jade({
locals: {
env: 'production',
texts: texts.EN,
config: texts.EN['config']
}
}))
.pipe(gulp.dest('./public/de/en'));
});
console.log(path.basename(file.path))
返回通过流的.jade
文件。
我想知道如何获取该变量并将其作为本地人之一传递给jade管道。这样我就可以在编译时在Jade中使用它。
任何其他链接/参考/文档都可以解释管道/流如何工作。
答案 0 :(得分:0)
从一个Transform
(您传递给pipe()
)到下一个vinyl-fs
的数据的唯一方法是将数据附加到正在流中的gulp-data
文件对象。 {{3}}插件让你这样做:
gulp.task('jade:prod:DE_EN', function () {
return gulp.src('./views/*.jade')
.pipe(data(function(file) {
return {
myBasename: path.basename(file.path),
env: 'production',
texts: texts.EN,
config: texts.EN['config']
};
}))
.pipe(jade())
.pipe(gulp.dest('./public/de/en'));
});
现在您可以访问Jade模板中的myBasename
本地:
doctype html
html(lang="en")
head
title=Test
body
h1 #{myBasename}