grunt 记录

//包装函数
module.exports = function (grunt) {
    //任务配置,所有插件的配置信息
    grunt.initConfig({
        //获取 package.json 的信息
        pkg:grunt.file.readJSON('package.json'),
        copy:{
            html:{
                files:[{
                    expand:true,//启动动态扩展
                    //ext:'.min.js',//生成min.js结尾的文件,.min-<%= grunt.template.today("yyyy-mm-dd") %>.js
                    cwd: 'src/html',//src相对路径
                    src:'**/*.html',
                    dest:'dest2/html'
                }]
            }
        },
        //uglify插件配置信息
        uglify:{
            options:{
                stripBanners:true,
                banner:'/*! <%=pkg.name%>-<%=pkg.version%>.js <%= grunt.template.today("yyyy-mm-dd") %> */
'
            },
            //动态文件映射
            build1:{
                files:[{
                    expand:true,//启动动态扩展
                    //ext:'.min.js',//生成min.js结尾的文件,.min-<%= grunt.template.today("yyyy-mm-dd") %>.js
                    cwd: 'src/js',//src相对路径
                    src:'**/*.js',
                    dest:'dest/js'
                }]
            }
        },
        cssmin:{
            target:{
                files:[{
                    expand:true,
                    cwd:'src/css',
                    src:['**/*.css','!*.min.css'],
                    dest:'dest/css'
                }]
            }
        },
        filerev:{
            options:{
                algmorithm:'md5',
                length:8
            },
            hash_js:{
                files:[{
                    expand:true,//启动动态扩展
                    //ext:'.min.js',//生成min.js结尾的文件,.min-<%= grunt.template.today("yyyy-mm-dd") %>.js
                    cwd: 'dest/js',//src相对路径
                    src:'**/*.js',
                    dest:'dest2/js'
                }]
            },
            hash_css:{
                files:[{
                    expand:true,
                    cwd:'dest/css',
                    src:['**/*.css'],
                    dest:'dest2/css'
                }]
            }
        }
    });
    //告诉我们将使用的插件
    require('load-grunt-tasks')(grunt); //加载所需的插件
    // grunt.loadNpmTasks('grunt-contrib-copy');
    // grunt.loadNpmTasks('grunt-contrib-uglify');
    // grunt.loadNpmTasks('grunt-contrib-cssmin');
    // grunt.loadNpmTasks('grunt-filerev');
    // grunt.loadNpmTasks('grunt-usemin');
    //告诉grunt 当我们在终端中输入grunt时需要做些什么(注意先后顺序)
    grunt.registerTask('default',['copy','useminPrepare','uglify:build1','cssmin','filerev','usemin']);

};
原文地址:https://www.cnblogs.com/haitangxun/p/5638975.html