gulp-concat:多个外部“配置”文件,可能吗?

Posted

技术标签:

【中文标题】gulp-concat:多个外部“配置”文件,可能吗?【英文标题】:gulp-concat: multiple external "config" files, is it possible? 【发布时间】:2014-12-23 03:39:11 【问题描述】:

免责声明:节点、流、gulp 的新手

我想通过frontend-maven-plugin 更新/改进我们当前的构建过程以使用gulp,并且我想知道是否可以使用外部配置文件来告诉gulp concat 可以使用哪些文件?

目前我们正在使用 /scripts/config/ 下的一些 ruby​​ 和 json 来执行此操作,并输出到组合文件夹中。有几十个这样的配置,可以逐个发布增加或缩小。

一个示例配置文件如下所示:


"outputFileName": "foo.js",
"dependencies":["blah.js","blah.js","blah.js"]

我看到的所有示例都在 gulp 文件中使用了预定义的硬编码列表。我想我真正要问的是这个功能是否存在开箱即用,或者我是否需要为此编写一个插件,当然假设一个不存在。

感谢您的宝贵时间

【问题讨论】:

【参考方案1】:

是的,加载 json 是普通节点:

var gulp   = require('gulp');
var concat = require('gulp-concat');
var config = require('./scripts/config/something.json');

gulp.task('scripts', function() 
    return gulp.src(config.dependencies)
        .pipe(concat(config.outputFileName))
        .pipe(gulp.dest('somewhere'));
);

加载多个文件的示例:

var gulp       = require('gulp');
var concat     = require('gulp-concat');
var requireDir = require('require-dir');
var config     = requireDir('./scripts/config');

gulp.task('scripts', function() 
    return gulp.src(config.something.dependencies)
        .pipe(concat(config.something.outputFileName))
        .pipe(gulp.dest('somewhere'));
);

【讨论】:

感谢 Heikki,这很棒。如果我想要一个配置文件列表,我会做这样的事情, var config = require('./scripts/config/*.json')? 例如require-dir。 太棒了,感谢您的帮助

以上是关于gulp-concat:多个外部“配置”文件,可能吗?的主要内容,如果未能解决你的问题,请参考以下文章

gulp 插件之 gulp-concat

Salesforce 配置教程- 如何添加多个审批人

所有Excel 文件打开显示“此工作簿包含一个或多个可能不安全的外部源的链接……”,怎么解决?

javascript Gulp 4 - 具有外部配置的多文件任务。使用gulp-load-plugins的基本gulpfile模板,用于多个任务文件

spring boot项目application.properties多环境配置文件jar包外部配置文件

idea中spring指定配置文件启动