zoukankan      html  css  js  c++  java
  • gulp 构建 demo

    安装包

    1. cnpm install gulp-concat gulp-uglify gulp-rename gulp-clean-css gulp-htmlmin-S

    2. cnpm install  gulp-livereload gulp-connect -S

    代码目录结构

    gulpfile.js

    var gulp = require('gulp');
    var concat = require('gulp-concat'); // 合并js,css
    var uglify = require('gulp-uglify'); // 压缩 js
    var rename = require('gulp-rename'); // 重命名
    var cleanCss = require('gulp-clean-css'); // 压缩 css
    var htmlMin = require('gulp-htmlmin');  //压缩 html
    var livereload = require('gulp-livereload');//自动编译
    var connect = require("gulp-connect"); //热加载 
    
    // 只压缩js
    gulp.task('js',function(){
        return gulp.src('src/js/*.js').pipe(uglify())
        .pipe(gulp.dest('dist/js'))
    })
    // 压缩 合并 js
    gulp.task('js-concat',function(){
        return gulp.src('src/js/*.js')
        .pipe(concat('c.js'))
        .pipe(gulp.dest('dist/js'))
        .pipe(uglify())
        .pipe(rename('c.min.js'))
        .pipe(gulp.dest('dist/js'))
        .pipe(livereload())
        .pipe(connect.reload());
    })
    
    // 压缩 合并 css
    gulp.task('css-concat',function(){
        return gulp.src('src/css/*.css')
        .pipe(concat('index.css'))
        .pipe(gulp.dest('dist/css'))
        .pipe(cleanCss())
        .pipe(rename('index.min.css'))
        .pipe(gulp.dest('dist/css'))
        .pipe(livereload())
        .pipe(connect.reload());
    })
    // 压缩 html
    gulp.task('html',function(){
        return gulp.src('src/index.html')
                .pipe(htmlMin({collapseWhitespace:true}))
                .pipe(gulp.dest('dist'))
                .pipe(livereload())
                .pipe(connect.reload());
    })
    // 开发时自动构建(半自动)
    gulp.task('watch', ['default'], function() {
        // 开启监听
        livereload.listen();
        // 监听相应文件变化,启动相应任务
        gulp.watch('src/js/*.js', ['js-concat']);
        gulp.watch('src/css/*.css', ['css-concat']);
        gulp.watch('src/index.html', ['html']);
    });
    
    // 开发时自动构建(全自动,热加载)
    gulp.task("server", ['default'],function(){//配置热更新服务器
    	connect.server({
    		root: "dist",
    		livereload: true,
    		port: 8090
        })
        // 监听相应文件变化,启动相应任务
        gulp.watch('src/js/*.js', ['js-concat']);
        gulp.watch('src/css/*.css', ['css-concat']);
        gulp.watch('src/index.html', ['html']);
    })
    
    // 构建
    gulp.task('default',['js-concat','css-concat','html'],function(){
        console.log('构建完毕ok');
    });

      

    构建时执行:gulp 命令即可

    开发时执行:gulp server

  • 相关阅读:
    递归的狂想(菜鸟的胡思乱想)
    关于fiddler的使用总结
    关于mac下 sublime 安装配置java及运行java个人建议
    关于VMwareFusion占用内存过多的问题提几点自己的解决方案
    (ubuntu)ubuntu的root密码设置
    Refactoring to Patterns 学习笔记2 为什么要重构?
    Refactoring to Patterns 学习笔记1 什么是重构?
    [转载]数据结构树之红黑树
    【转载】数据结构之图(存储结构、遍历)
    STL库之单链表:forward_list
  • 原文地址:https://www.cnblogs.com/jlyuan/p/13234888.html
Copyright © 2011-2022 走看看