我如何获得基本文件名并将其作为变量传递到gulp中的管道



我试图获取通过流的每个html文件的基本名称。这里的代码显然不起作用,因为_base不再在作用域中。似乎应该有一种非常简单的方法来做到这一点,或者可能有一些我不知道的内置在gulp-ejs中的东西。想法吗?

gulp.task('html', function () {
    return gulp.src('app/*.html')
    .pipe(tap(function(file, t){
        var _base = path.basename(file.path, '.html');
    })
    .pipe($.ejs(require('./app/'+_base+'.json')))
});

不能在返回语句上面声明_base吗?

gulp.task('html', function () {
    var _base;
    return gulp.src('app/*.html')
    .pipe(tap(function(file, t){
        _base = path.basename(file.path, '.html');
    })
    .pipe($.ejs(require('./app/'+_base+'.json')))
});

您不能像那样访问文件名,因为您超出了正在运行的流的范围。你需要做的是使用你点击的文件名或者使用through2。你具体想达到什么目标?

相关内容

  • 没有找到相关文章

最新更新