zoukankan      html  css  js  c++  java
  • gulp 安装 使用

    1.首先要安装 node.js 有个环境先:下载地址 https://nodejs.org/en  

     安装是否成功: node -v   -->显示个版本号就成功了,目前的node 会自己配置好环境。-npm 包管理,安装node 时候已经自动安装上去了

    2.安装gulp 

      npm install -g gulp  #全局安装

      npm install gulp --save-dev # 局部安装 ( 这里做个解释就是说:你在你的项目里安装gulp )

    gulp基础语法

    gulp通过gulpfile文件来完成相关任务,因此项目中必须包含gulpfile.js

    gulp有五个方法:src、dest、task、run、watch
    src和dest:指定源文件和处理后文件的路径
    watch:用来监听文件的变化
    task:指定任务
    run:执行任务

    编写gulp任务

    /**
     * 组件安装
     * npm install gulp-ruby-sass gulp-minify-css gulp-jshint gulp-uglify gulp-rename gulp-concat gulp-clean gulp-livereload --save-dev
     */

    // 引入 gulp及组件
    var gulp    = require('gulp'),                 //基础库
        imagemin = require('gulp-imagemin'),       //图片压缩
        sass = require('gulp-ruby-sass'),          //sass
        minifycss = require('gulp-minify-css'),    //css压缩
        jshint = require('gulp-jshint'),           //js检查
        uglify  = require('gulp-uglify'),          //js压缩
        rename = require('gulp-rename'),           //重命名
        concat  = require('gulp-concat'),          //合并文件
        clean = require('gulp-clean'),             //清空文件夹
        tinylr = require('tiny-lr'),               //livereload
        server = tinylr(),
        port 35729,
        livereload = require('gulp-livereload');   //livereload

    // HTML处理
    gulp.task('html'function({
        var htmlSrc './src/*.html',
            htmlDst './dist/';

        gulp.src(htmlSrc)
            .pipe(livereload(server))
            .pipe(gulp.dest(htmlDst))
    });

    // 样式处理
    gulp.task('css'function ({
        var cssSrc './src/scss/*.scss',
            cssDst './dist/css';

        gulp.src(cssSrc)
            .pipe(sass({ style'expanded'}))
            .pipe(gulp.dest(cssDst))
            .pipe(rename({ suffix'.min' }))
            .pipe(minifycss())
            .pipe(livereload(server))
            .pipe(gulp.dest(cssDst));
    });

    // 图片处理
    gulp.task('images'function(){
        var imgSrc './src/images/**/*',
            imgDst './dist/images';
        gulp.src(imgSrc)
            .pipe(imagemin())
            .pipe(livereload(server))
            .pipe(gulp.dest(imgDst));
    })

    // js处理
    gulp.task('js'function ({
        var jsSrc './src/js/*.js',
            jsDst ='./dist/js';

        gulp.src(jsSrc)
            .pipe(jshint('.jshintrc'))
            .pipe(jshint.reporter('default'))
            .pipe(concat('main.js'))
            .pipe(gulp.dest(jsDst))
            .pipe(rename({ suffix'.min' }))
            .pipe(uglify())
            .pipe(livereload(server))
            .pipe(gulp.dest(jsDst));
    });

    // 清空图片、样式、js
    gulp.task('clean'function({
        gulp.src(['./dist/css''./dist/js''./dist/images']{readfalse})
            .pipe(clean());
    });

    // 默认任务 清空图片、样式、js并重建 运行语句 gulp
    gulp.task('default'['clean']function(){
        gulp.start('html','css','images','js');
    });

    // 监听任务 运行语句 gulp watch
    gulp.task('watch',function(){

        server.listen(portfunction(err){
            if (err{
                return console.log(err);
            }

            // 监听html
            gulp.watch('./src/*.html'function(event){
                gulp.run('html');
            })

            // 监听css
            gulp.watch('./src/scss/*.scss'function(){
                gulp.run('css');
            });

            // 监听images
            gulp.watch('./src/images/**/*'function(){
                gulp.run('images');
            });

            // 监听js
            gulp.watch('./src/js/*.js'function(){
                gulp.run('js');
            });

        });
    });

     

  • 相关阅读:
    但是难道我就不能在JBuilder里面看我可爱的中文了吗?[小糊涂的灵感]
    why is j2me midp superior to wap?[小糊涂的灵感]
    NRF51822之GPIOTE介绍
    Unity脚本生命周期
    树状数组学习笔记
    模版—扩展欧几里德
    hdu4339Query
    POJ3273Monthly Expense
    多校第一场
    ZOJJ Watashi's BG3631
  • 原文地址:https://www.cnblogs.com/zengcanxin/p/5361049.html
Copyright © 2011-2022 走看看