Grunt:将sourceFiles数组发送到grunt任务uglify

时间:2014-08-16 18:09:58

标签: gruntjs grunt-contrib-uglify

我似乎无法在文档中找到答案。我想从package.json发送一个sourceFiles数组到grunt任务。

这是我的config.json

{
  "sourceFiles": ["src/js/d3js/d3.js", "src/js/testingGrunt.js"]
}

这是我的gruntfile.js

module.exports = function(grunt) {
  // Project configuration.

  grunt.initConfig({
     pkg: grunt.file.readJSON('package.json'),
     config: grunt.file.readJSON('config.json')
  });

  // Load the plugin that provides the concat tasks.
  grunt.loadNpmTasks('grunt-contrib-concat');

  // defining my concat task
  grunt.config('concat', {
        dist: {
          //src: ['src/js/testingGrunt.js', 'src/js/d3js/d3.js'],
          src: '<%config.sourceFiles%>',
          dest: 'build/<%= pkg.name %>-build.js'
        }
  });

  // Load the plugin that provides the uglify tasks.
  grunt.loadNpmTasks('grunt-contrib-uglify');

  // defining my uglify task
  grunt.config('uglify', {
      options: {
        banner: '/*\n*    ©<%= pkg.author%>\n*    <%= pkg.name %>\n*    <%= grunt.template.today("yyyy-mm-dd HH:mm:ss") %> \n*/\n'
      },
      build: {
        src: 'build/<%= pkg.name %>-build.js',
        dest: 'build/<%= pkg.name %>-build.min.js'
      }
  });



  // Default task(s).
  var defaultTasks;
  defaultTasks = ['concat', 'uglify']


  grunt.registerTask('default', defaultTasks);

};

grunt.config中注释掉的行(&#39; concat&#39;,......工作正常。但是我想设置我的gruntfile来从配置文件中读取文件。

最终,我将在这个艰巨的任务中做其他事情,我想设置它,以便我永远不需要编辑grunt文件。

1 个答案:

答案 0 :(得分:1)

看起来模板语法已关闭尝试替换:

src: '<%config.sourceFiles%>',

以下内容:

src: '<%= config.sourceFiles %>',