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") %> */\n' }, //动态文件映射 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']); };