gulp的使用

作者: 不知道取个什么昵称不如娶个媳妇 | 来源:发表于2018-09-28 20:13 被阅读2次

安装nodejs

传送门在这

安装成功之后

node -v //查看版本

node-v

npm - v //查看npm版本

npm-v

npm install gulp -g//全局安装gulp

gulp

gulp -v

gulp-v

进入本地项目文件

npm init -y//默认建立一个package.json文件

npm init -y
//这里使用cnpm cnpm和npm一样,唯一不同的区别是cnpm是阿里的npm镜像

cnpm i gulp -D//i===install , D === --save-dev 本地安装gulp

本地安装gulp

cnpm i gulp-clean-css -D //css压缩所需要的文件

.gulp-clean-css

cnpm i gulp-htmlmin -D//html压缩文件

gulp-htmlmin

cnpm i gulp-uglify -D//js压缩文件

gulp-uglify

cnpm i gulp-babel@7 babel-core babel-preset-env//ES6转ES5代码文件

gulp-babel

cnpm i gulp-connect -D//自动刷新网页文件

gulp-connect

cnpm i gulp-sass -D//sass编译文件

gul-sass

package文件

{
  "name": "sass_index",
  "version": "1.0.0",
  "description": "",
  "main": "gulpfile.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "babel-core": "^6.26.3",
    "babel-preset-env": "^1.7.0",
    "gulp": "^3.9.1",
    "gulp-babel": "^7.0.1",
    "gulp-clean-css": "^3.10.0",
    "gulp-connect": "^5.6.1",
    "gulp-htmlmin": "^5.0.1",
    "gulp-sass": "^4.0.1",
    "gulp-uglify": "^3.0.1"
  }
}

准备工作做好

写网页

写网页这种无聊的事情就不展示,接下来咱们来撸撸gulp的使用,任务定制

定制任务

建立gulpfile.js文档,要定制的任务都保存在这里

引入插件

const gulp = require("gulp"),
    babel = require("gulp-babel"),
    nimifycss = require("gulp-clean-css"),
    htmlmini = require("gulp-htmlmin"),
    uglify = require("gulp-uglify"),
    sass = require("gulp-sass"),
    connect = require("gulp-connect");
//定制任务压缩html
gulp.task("html",()=>{
   gulp.src("./index.html")
   .pipe(htmlmini({ collapseWhitespace: true }))
   .pipe(gulp.dest("dist"))
   .pipe(connect.reload());
});
//定制任务压缩css
gulp.task("css",()=>{
    gulp.src("css/**/*.css")
    .pipe(nimifycss())
    .pipe(gulp.dest("dist/css"))
    .pipe(connect.reload());
});
//定制任务压缩js
gulp.task("js",()=>{
    gulp.src("js/**/*.js")
    .pipe(babel({
        presets:["env"]
    }))
    .pipe(uglify())
    .pipe(gulp.dest("dist/js"))
    .pipe(connect.reload());
});
//定制任务压缩html文件夹下的html文件
gulp.task("html-html",()=>{
    gulp.src("html/**/*.html")
    .pipe(htmlmini({ collapseWhitespace: true }))
    .pipe(gulp.dest("dist/html"))
    .pipe(connect.reload());
});
//定制任务编译sass样式
gulp.task("sass",()=>{
    gulp.src("sass/**/*.scss")
    .pipe(sass({outputStyle:"expanded"}))
    .pipe(gulp.dest("css"))
    .pipe(connect.reload());
});
//定制任务复制图片
gulp.task("imgs-copy",()=>{
    gulp.src("imgs/**/*.*")
    .pipe(gulp.dest("dist/imgs"));
});
//定制任务启动websever服务器
gulp.task("conn",()=>{
    connect.server({
        root:"dist",
        livereload:true
    });
});
//定制监视任务
gulp.task("watch",()=>{
    gulp.watch("index.html",["html"]);
    gulp.watch("css/**/*.css",["css"]);
    gulp.watch("js/**/*.js",["js"]);
    gulp.watch("html/**/*.html",["html-html"]);
    gulp.watch("sass/**/*.scss",["sass"]);
    gulp.watch("imgs/**/*.*",["imgs-copy"]);
});
//定制默认任务
gulp.task("default",
        ["html",
         "css",
         "js",
         "html-html",
         "sass",
         "imgs-copy",
         "watch",
         "conn"
        ]
);

直接gulp运行default默认任务

gulp

压缩后的文件


css js html

相关文章

网友评论

    本文标题:gulp的使用

    本文链接:https://www.haomeiwen.com/subject/qpppoftx.html