0

我有以下情况:

  1. 连接一些文件
  2. 丑化一些文件(基于连接的文件)
  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"]); 

};
4

1 回答 1

0

在 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"]); 
};
于 2015-05-27T07:44:03.310 回答