gruntjs:配置从命令行连接的文件

时间:2013-02-28 09:32:39

标签: javascript gruntjs

在我的项目中,我有JS文件模块,应该打包在一个文件中。

文件夹结构:

| src
| - start.js
| - module1.js
| - module2.js
| - module3.js
| - end.js

我想从命令行配置要包含在文件中的模块。

例如,如果我运行grunt -module1-module3,生成的文件应该由start.js,module1.js,module3.js,end.js组成。

是否有内置支持?或者也许有任何插件可以帮助我吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以传递逗号分隔的文件列表,您可以从中创建文件对象。这是一个简单的例子:

module.exports = function(grunt) {

  function buildFiles() {
    var buildFiles = grunt.option('build-modules').split(',');
    buildFiles.unshift('start');
    buildFiles.push('end');
    for (var i = 0, l = buildFiles.length; i < l; i += 1){
      buildFiles[i] = buildFiles[i] + ".js";
    }
    return buildFiles;
  }

  // Project configuration.
  grunt.initConfig({
   concat: {
      dist: {
        src: buildFiles(), 
        dest: 'dist/out.js'
      }
    },
  });

};

你可以用grunt concat --build-modules=module1,module2

来调用grunt