grunt基本 使用

grunt

npm

npminit npm install 安装

grunt是JavaScript世界项目的构建工具

重点1.package.json不存在时

命令:npm init可自动创建package.json文件

重点2.package.json存在时

直接命令:npm install 或者 npm install –save-dev会自动将package.json中的模块安装到node-modules文件夹下

安装grunt

npm install grunt –save-dev
使用中国节点,淘宝镜像
npm install -g cnpm –registry=https://registry.npm.taobao.org
安装grunt
$ cnpm install grunt –save-dev

安装grunt-cli工具

$ cnpm install grunt-cli -g

grunt-spritesmith 制作精灵图

安装grunt-spritesmith
$ cnpm install grunt-spritesmith –save-dev

 sprite: {
            all: {
                src: ['public/images/*.png', '!public/images/banner.png', '!public/images/bannerPhone.jpg'],
                dest: 'public/images/spritesheet.png',
                destCss: 'public/css/sprites.css'
            }
        }
 ```
### grunt-contrib-cssmin  压缩css
```js
cnpm install grunt-contrib-cssmin --save-dev 
 cssmin: {
            target: {
                files: [{
                    expand: true,
                    cwd: 'public/css',
                    src: ['*.css', '!*.min.css'],
                    dest: 'public/css',
                    ext: '.min.css'
                }]
            }
        }




<div class="se-preview-section-delimiter"></div>

grunt-contrib-imagemin 压缩图片

cnpm install grunt-contrib-imagemin –save-dev

imagemin: {
            release: {
                files: [{
                    expand: true,
                    src: ['public/images/spritesheet.png', 'public/images/banner.png', 'public/images/bannerPhone.jpg']
                }],
                options: [{
                    optimizationLevel: 3,
                }]
            }
        },




<div class="se-preview-section-delimiter"></div>

grunt-contrib-htmlmin 压缩html

htmlmin: { // Task 
            dist: { // Target 
                options: { // Target options 
                    removeComments: true,
                    collapseWhitespace: true
                },
                files: { // Dictionary of files 
                    'contact.html': 'index.html'
                }
            },
        }




<div class="se-preview-section-delimiter"></div>

grunt-contrib-uglify 压缩js

uglify: {
            my_target: {
                files: {
                    'public/uglify.min.js': ['public/js/jquery-3.2.1.js']
                }
            }
        }




<div class="se-preview-section-delimiter"></div>

grunt-contrib-concat 链接js或者css

concat: {
            js: {
                file: {
                    'build/js/bundle.js': ['public/js/jquery-3.2.1.js', 'public/js/bootstrap.js']
                }
            },
            css: {
                file: {
                    'build/js/final.min.css': ['public/css/*.min.css']
                }
            }
        }




<div class="se-preview-section-delimiter"></div>

grunt-contrib-jshint 检查代码错误

jshint: ['public/js/jquery-3.2.1.js'],




<div class="se-preview-section-delimiter"></div>

grunt-contrib-less less生成css

less: {
            compile: {
                files: {
                    'public/css/complied.css': 'public/css/*.less'
                }
            }
        }




<div class="se-preview-section-delimiter"></div>

grunt-contrib-watch 监听

watch: {
            less: {
                tasks: ['less:compile'],
                files: ['public/css/*.less']
            }
        }




<div class="se-preview-section-delimiter"></div>
module.exports = function(grunt) {
    grunt.initConfig({
        sprite: {
            all: {
                src: ['public/images/*.png', '!public/images/banner.png', '!public/images/bannerPhone.jpg'],
                dest: 'public/images/spritesheet.png',
                destCss: 'public/css/sprites.css'
            }
        },
        cssmin: {
            target: {
                files: [{
                    expand: true,
                    cwd: 'public/css',
                    src: ['*.css', '!*.min.css'],
                    dest: 'public/css',
                    ext: '.min.css'
                }]
            }
        },
        imagemin: {
            release: [{
                expand: true,
                src: ['public/images/spritesheet.png', 'public/images/banner.png', 'public/images/bannerPhone.jpg']
            }],
            option: {
                optimzation: 3
            }
        }

    });
    grunt.loadNpmTasks('grunt-spritesmith');
    grunt.loadNpmTasks('grunt-contrib-cssmin');
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值