【问题标题】:Complex gruntjs tasks复杂的 gruntjs 任务
【发布时间】:2015-05-25 12:16:46
【问题描述】:

我有以下场景:

  1. 合并一些文件
  2. uglify 一些文件(基于连接的文件)
  3. 将一个文件连接到另一个文件(上面已经被丑化了)

我将如何编写 gruntfile.js?

我尝试了这样的方法,但没有成功。

谢谢

module.exports = function(grunt) {
grunt.initConfig({
    pkg:grunt.file.readJSON('package.json'),
    concat: {
        target: {
            files: [{
    "dest/js/admin.main.js": ["js/spa.js", "js/spa.library.js"],
    "dest/js/jquery-1.min.js": ["js/jquery.min.js", "js/jquery-ui.min.js"]
   }]}
    },
    uglify: {
        target: {
            files: [{
                "dest/js/admin.main.min.js": ["dest/js/admin.main.js"],
                "dest/js/jquery-2.min.js": ["js/jquery.loadingoverlay.js"]
            }]
         }
     },
     concat: {
        target: {
            files: [{
                "dest/js/jq.min.js": ["dest/js/jquery-1.min.js", "dest/js/jquery-2.min.js"]
            }]
        }
    }
});

grunt.loadNpmTasks("grunt-contrib-concat");
grunt.loadNpmTasks("grunt-contrib-uglify");

grunt.registerTask("default", ["concat", "uglify"]); 

};

【问题讨论】:

    标签: gruntjs grunt-contrib-concat grunt-contrib-uglify


    【解决方案1】:

    在 grunt 中,您只能为一个任务定义一次配置,但您可以定义多个目标(具有不同的名称)。因此,在您的情况下,您需要在“concat”任务下定义两个目标,然后按顺序调用它们:

    module.exports = function(grunt) {
      grunt.initConfig({
        pkg:grunt.file.readJSON('package.json'),
        concat: {
          step1: {
            files: [{
              "dest/js/admin.main.js": ["js/spa.js", "js/spa.library.js"],
              "dest/js/jquery-1.min.js": ["js/jquery.min.js", "js/jquery-ui.min.js"]
            }]
          },
          step2: {
            files: [{
                "dest/js/jq.min.js": ["dest/js/jquery-1.min.js", "dest/js/jquery-2.min.js"]
            }]
          }
        },
    
        uglify: {
          target: {
            files: [{
                "dest/js/admin.main.min.js": ["dest/js/admin.main.js"],
                "dest/js/jquery-2.min.js": ["js/jquery.loadingoverlay.js"]
            }]
           }
        },
      });
    
      grunt.loadNpmTasks("grunt-contrib-concat");
      grunt.loadNpmTasks("grunt-contrib-uglify");
    
      grunt.registerTask("default", ["concat:step1", "uglify", "concat:step2"]); 
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-03
      • 2023-03-25
      相关资源
      最近更新 更多