maven项目中整合grunt构建工具(二)-js合并、压缩技术

1、使用grunt-contrib-concat插件,对多个js进行合并,在package.json中配置插件信息,代码如下

{
   "name":"xuewenyu-ui",
   "version":"0.0.1",
   "dependencies": {
      "grunt": "~0.4.5",
      "grunt-cli": "~0.1.13",
      "grunt-contrib-concat": "~0.5.1"
   },
   "devDependencies": {}
}

2、在src目录下创建inc目录,并创建两个js文件。

131651_byJh_1396314.png

3、编写GruntFile.js文件

module.exports = function(grunt) {
    grunt.initConfig({
        pkg : grunt.file.readJSON('package.json'),
        // js 合并
        concat : {
            demo : {
                src : [ 'src/inc/*.js' ],
                dest : 'src/dest/<%= pkg.name %>.js'
            }
        }
        //可以增加多个任务,用于发布到不同环境
    });

    // 加载插件
    grunt.loadNpmTasks('grunt-contrib-concat');

    // 注册任务
    grunt.registerTask('default', [ 'concat' ]);
};

4、mvn clean install一下,会在src/dest目录下多了一个文件

132410_ttfD_1396314.png

这个文件就是我们合并多个js后得到的一个新的js,测试成功。

5、使用grunt-contrib-uglify插件,对js进行压缩,在package.json中增加插件配置

{
   "name":"xuewenyu-ui",
   "version":"0.0.1",
   "dependencies": {
      "grunt": "~0.4.5",
      "grunt-cli": "~0.1.13",
      "grunt-contrib-concat": "~0.5.1",
      "grunt-contrib-uglify": "~0.11.0"
   },
   "devDependencies": {}
}

6、在GruntFile.js中配置压缩js信息

module.exports = function(grunt) {
    grunt
            .initConfig({
                pkg : grunt.file.readJSON('package.json'),
                // js 合并
                concat : {
                    demo : {
                        src : [ 'src/inc/*.js' ],
                        dest : 'src/dest/<%= pkg.name %>.js'
                    }
                },
                uglify : {
                    options : {
                        banner : '/*! <%= pkg.name %><%= grunt.template.today("dd-mm-yyyy") %>*/\n'
                    },
                    dist : {
                        files : {
                            'src/dest/<%= pkg.name %>.min.js' : [ 'src/dest/<%= pkg.name %>.js' ],
                        }
                    }
                }
            });

    // 加载插件
    grunt.loadNpmTasks('grunt-contrib-concat');
    grunt.loadNpmTasks('grunt-contrib-uglify');

    // 注册任务
    grunt.registerTask('default', [ 'concat', 'uglify' ]);
};

7.mvn clean install,查看dest目录下,多出一个min.js的文件,查看下

133430_bZK6_1396314.png

此时,这个文件就是我们多个js合并压缩后的产物,web引入这个文件,就可以了。

转载于:https://my.oschina.net/yxwblog/blog/607346

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值