grunt

npm install -g grunt-cli

npm init -y

npm install grunt --save-dev

grunt 安装完毕

Gruntfile干这几件事情

1、包装函数 module.exports = function(grunt) {}

2、项目/任务配置 initConfig()

3、加载插件 loadNpmTasks()

4、注册任务 registerTask()

项目/任务配置中干这几件事情

1、将配置文件读出,并且转换为json对象 pkg: grunt.file.readJSON('package.json')

2、配置一些命名性属性比如:uglify

1、在src中找到目标文件进行压缩

2、找到要导出的目录,没有就新建,将压缩文件放进去

3、在上面加几个描述语言

综上:我们使用grunt时,主要工作就是配置或者注册任务,实际上就是在做一个事件注册,由我们来触发

文件头部加一段注释性语言配置banner信息options: {banner:'/*! 注释信息 */'}

npminstallgrunt-contrib-uglify--save-dev//安装压缩插件grunt.loadNpmTasks('grunt-contrib-uglify');//引入压缩插件

npm install grunt-contrib-concat--save-dev//安装合并插件grunt.loadNpmTasks('grunt-contrib-concat');//引入压缩插件

npm install grunt-contrib-cssmin --save-devnpm install grunt-contrib-htmlmin --save-dev

npminstallgrunt-contrib-watch--save-dev//监听grunt.loadNpmTasks('grunt-contrib-watch');

module.exports =function(grunt){    grunt.initConfig({pkg: grunt.file.readJSON('package.json'),uglify:{options: {banner:'/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'},bar:{//files:[//    {//        src:'js/js1.js',//        dest:'dist/js1.min.js'//    },//    {//        src:'js/js2.js',//        dest:'dist/js2.min.js'//    }//]files:[{expand:true,cwd:'js/',src: ['*.js'],dest:'dist/js'}]            }        },concat:{css:{src:'css/*.css',dest:'dist/css/all.css'},js:{src:'js/*.js',dest:'dist/jsmin/all.js'}        },htmlmin:{bar:{options: {removeComments:true,removeCommentsFromCDATA:true,collapseWhitespace:true,collapseBooleanAttributes:true,removeAttributeQuotes:true,removeRedundantAttributes:true,useShortDoctype:true,removeEmptyAttributes:true,removeOptionalTags:true},files:[{expand:true,src: ['*.html'],dest:'dist/html'}]            }        },watch:{files:['js/*.js'],tasks:['uglify','concat']        }    });    grunt.loadNpmTasks('grunt-contrib-uglify');    grunt.loadNpmTasks('grunt-contrib-concat');    grunt.loadNpmTasks('grunt-contrib-htmlmin');    grunt.loadNpmTasks('grunt-contrib-watch');    grunt.registerTask('default', ['uglify','concat','htmlmin','watch']);};

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Grunt配置 Grunt的task配置都是在 Gruntfile 中的grunt.initConfig方法中指定...
    慢狍子阅读 574评论 0 1
  • grunt gulp grunt: 压缩代码,合并代码,检测代码书写规范... 前端自动化工具 构建项目 官网:h...
    嘬烟盒的程序员阅读 425评论 3 4
  • 它们的功能一样 不同之处:gulp的速度比grunt快,grunt是通过文件的机制来压缩的,grunt是通过二进制...
    寒潭落花阅读 1,297评论 0 0
  • grunt 官网:https://gruntjs.com/ 下载: 优点: 使用方法 1、grunt它是基于nod...
    米塔塔阅读 549评论 0 9
  • 第一步 安装node.js到node官网下载安装包,安装包已内置npm包资源管理器,安装即可! 第二步 执行配置及...
    智多牛阅读 499评论 0 0