web 开发自动化grunt

现在web开发自动化已很流行,如何进行压缩文件,如何进行测试js是否正确,如何进行

检测html文件是否规范等等都可以通过web自动化技术进行实现,只要打一个命令即可。

本文主要是通过grunt进行实现。

grunt如何安装请参看Grunt中文网 "http://gruntjs.cn/"

如果要添加其他组件利用nodejs的npm包管理工具进行安装:"npm install grunt-contrib-quint --save-dev"

命令执行完后会自动在package.json中添加

在项目文件中要添加"package.json"和"Gruntfile.js"文件。

"package.json":是项目信息。

"Gruntfile.js":项目所加载的自动化处理组件。

 

"pageage.json"文件内容如下:

{

  "name": "gruntdemo",

  "version": "0.1.0",

  "description": "grungdemo",

  "author": "tom",

  "devDependencies": {

    "grunt": "^0.4.5",

    "grunt-contrib-clean": "^0.5.0",

    "grunt-contrib-concat": "^0.4.0",

    "grunt-contrib-imagemin": "^0.7.1",

    "grunt-contrib-uglify": "^0.5.0"

  }

}

"Gruntfile.js"文件内容如下:

module.exports = function (grunt) {

    'use strict';

    grunt.initConfig({

        pkg: grunt.file.readJSON('package.json'),

        banner:'/*<%=pkg.author%>*/\n',

        clean:{

            src:['dist']

        },

        concat:{

            options:{

                banner:'<%=banner%>',

                stripBanners:true

            },

            dist:{

                src:['src/*.js'],

                dest:'dist/<%=pkg.name%>.js'

            }

        },

        uglify:{

           options:{

               banner:'<%=banner%>'

           },



          /* dist:{

               src:'<%=concat.dist.dest%>',

               dest:'dist/t<%=pkg.name%>.min.js'

           }*/



            /*dist:{

                files:{

                    'dist/t<%=pkg.name%>.min.js':['<%=concat.dist.dest%>']

                }

            }*/



            dist:{

                files:[

                    {

                        src:'<%=concat.dist.dest%>',

                        dest:'dist/t<%=pkg.name%>.min.js'

                    }

                ]

            }

        },

        imagemin: {

            /* 压缩图片大小 */

            dist: {

                options: {

                    optimizationLevel: 3 //定义 PNG 图片优化水平

                },

                files: [

                    {

                        expand: true,

                        cwd: 'img/',

                        src: ['**/*.{png,jpg,jpeg}'], // 优化 img 目录下所有 png/jpg/jpeg 图片

                        dest: 'img/' // 优化后的图片保存位置,覆盖旧图片,并且不作提示

                    }

                ]

            }

        }

    });

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

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

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

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

    //grunt.registerTask('img', ['imagemin']);

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

};

  现在通过grunt命令即可,实现js的压缩和图片的压缩。

 

 

 

 

你可能感兴趣的:(grunt)