gulp编译sass,es6,实现压缩和实时重载

目录结构
+--node_modules
+--public
|  +--css
|  +--sass
   |  +--index.scss
|  +--es6
   |  +--index.js
|  +--js
+--index.html
+--gulpfile.js
+--package.json

插件
1.用于编译es6, 压缩js;
  gulp-babel,  @babel/preset-env,  @babel/core,  gulp-uglify
2.用于编译sass, 压缩css,  自动补全浏览器前缀;
  gulp-sass,  gulp-clean-css,  gulp-autoprefixer
3.实时重载;
  browser-sync

gulpfile.js配置
var gulp = require("gulp"), 
    sass = require("gulp-sass"),   
    browserSync = require("browser-sync"),    
    autoprefixer = require("gulp-autoprefixer"),    
    babel = require("gulp-babel"),    
    uglify = require("gulp-uglify"),  
    minifyCss = require("gulp-clean-css"),    
    reload = browserSync.reload;
//sass编译
gulp.task("sass", function() {    
  gulp.src("public/sass/*.scss")    
  .pipe(sass())    
  // 浏览器前缀补全    
  .pipe(autoprefixer({
    browsers: ["last 3 versions"],
    cascade: false
  }))
  // css压缩
  .pipe(minifyCss({
    keepSpecialComments: "*"
  }))
  .pipe(gulp.dest("public/css"))
  .pipe(reload({stream: true}))
})
//es6编译
gulp.task("es6", function() {
  gulp.src("public/es6/*.js")
  .pipe(babel({
  //# Babel 7
  //npm install --save-dev gulp-babel @babel/core @babel/preset-env
  //# Babel 6
  //npm install --save-dev gulp-babel@7 babel-core babel-preset-env
    presets: ['@babel/env']
  }))
  //js压缩
  .pipe(uglify())
  .pipe(gulp.dest("public/js"))
})
gulp.task("server", ["sass", "es6"], function() {
  browserSync({
    server: {
      baseDir: "public"
    }
  })
  gulp.watch("public/sass/*.scss", ["sass"])
  gulp.watch("public/es6/*.js", ["es6"])
  gulp.watch("**/*.*", {cwd: "public"}, reload)
})

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

推荐阅读更多精彩内容

  • 在现在的前端开发中,前后端分离、模块化开发、版本控制、文件合并与压缩、mock数据等等一些原本后端的思想开始...
    Charlot阅读 5,484评论 1 32
  • gulpjs是一个前端构建工具,与gruntjs相比,gulpjs无需写一大堆繁杂的配置参数,API也非常简单,学...
    依依玖玥阅读 3,185评论 7 55
  • gulpjs是一个前端构建工具,与gruntjs相比,gulpjs无需写一大堆繁杂的配置参数,API也非常简单,学...
    MC丶逗逼嘿阅读 683评论 0 3
  • 1、gulp的安装 首先确保你已经正确安装了nodejs环境。然后以全局方式安装gulp: npm install...
    F_imok阅读 2,400评论 1 11
  • Sass&Gulp 一、sass介绍 (一) SASS是一种CSS的开发工具,提供了许多便利的写法,大大节省了设计...
    锋享前端阅读 1,531评论 0 3