【问题标题】:How to create many individual uglify tasks in grunt?如何在 grunt 中创建许多单独的 uglify 任务?
【发布时间】:2017-12-14 22:54:25
【问题描述】:

当我尝试创建许多 uglify 任务时,我得到了错误。我必须评论和取消评论一项任务才能使一项任务正常工作。希望可以有人帮帮我。我需要使用此插件创建的两个单独的缩小 .js 文件,但我无法弄清楚。如果可以在一个任务命令中创建两个任务,该命令将创建两个单独的缩小 .js 文件,如下所示,那也很棒。期待您的想法。

module.exports = function(grunt){

grunt.loadNpmTasks('grunt-contrib-uglify');

    grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    uglify:{
        t1:{
            files:{
                'build/scripts1.js' : ['abc.js', 'xc.js']

            }
        }
    },

    uglify:{
        t2:{
            files:{
                'build/scripts2.js' : ['123.js', 63a5.js]

            }
        }
    }
    });
};

【问题讨论】:

    标签: javascript node.js gruntjs grunt-contrib-uglify


    【解决方案1】:

    您需要将Targets t1t2 添加到一个uglify Task 中,如下所示:

    Gruntfile.js

    module.exports = function (grunt) {
    
      grunt.loadNpmTasks('grunt-contrib-uglify');
    
      grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
    
        uglify:{
          t1:{
            files:{
              'build/scripts1.js' : [ 'abc.js', 'xc.js' ]
            }
          },
          t2:{
            files:{
                'build/scripts2.js' : [ '123.js', '63a5.js' ]
            }
          }
        }
      });
    
      grunt.registerTask('default', ["uglify"]);
      grunt.registerTask('foo', ["uglify:t1"]);
      grunt.registerTask('quux', ["uglify:t2"]);
    };
    

    咕噜咕噜地跑

    上面的Gruntfile.js有三个registerTask,即; defaultfooquux

    • 运行$ grunt 将同时运行目标t1t2

    • 运行$ grunt foo 将只运行目标t1

    • 运行$ grunt quux 将只运行目标t2

    fooquux 都使用冒号表示法(即"uglify:t1""uglify:t2")来仅引用其中一个目标。

    default 任务仅引用 uglify,这将导致运行 uglify 目标中的所有目标(无论多少)。

    【讨论】:

    • 非常感谢您的帮助,非常详细的解释非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2014-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-29
    • 2018-08-11
    相关资源
    最近更新 更多