gulp入门

实现自动刷新功能
在目录下创建js文件gulpfile.js

var gulp = require('gulp');

// 公用util
var browserSync = require('browser-sync'); // 自动刷新
var plumber = require('gulp-plumber'); // gulp 错误处理
var rename = require('gulp-rename'); // 文件重命名

// CSS相关
var postcss = require('gulp-postcss');
var precss = require('precss');
var autoprefixer = require('autoprefixer');
var extend = require('postcss-simple-extend');
var mixins = require('postcss-sassy-mixins');
var comment = require('postcss-inline-comment');
var scss = require('postcss-scss');
var stripInlineComments = require('postcss-strip-inline-comments');

// build 使用
var runSequence = require('run-sequence'); // 另一个任务同步处理工具
var del = require('del'); // 删除文件专用
var zip = require('gulp-zip');

function buildCss() {
    var postCssPlugins = [
        precss,
        autoprefixer({
            browsers: ['> 1%', 'IE > 8', 'Android >= 1.6', 'iOS >= 1.0']
        }),
        stripInlineComments
    ];

    gulp.src('./scss/style.scss')
        .pipe(plumber())
        .pipe(postcss(postCssPlugins, {syntax: scss}))
        .pipe(rename(function (path) {
            path.extname = '.css';
        }))
        .pipe(gulp.dest('./css'));
}

gulp.task('browserSync', function () {
    browserSync.init({
        port: 2333,
        server: {
            baseDir: './',
            index: 'myOrder.html'
        }
    });

    browserSync.watch('./css/*.css').on('change', browserSync.reload);
    browserSync.watch('./js/*.js').on('change', browserSync.reload);
    browserSync.watch('./*.html').on('change', browserSync.reload);
});

gulp.task('scss', function () {
    buildCss();
    gulp.watch('scss/*.scss', function () {
        buildCss();
    });
});

gulp.task('default', ['browserSync', 'scss']);

// ---------- 下面是编译所有的 gulp处理工具 --------- 下面的先不看还没有完成

// 清空build目录
gulp.task('clean', function (cb) {
    return del([
        './dist/**/*'
    ], cb);
});

// 只编译css 不监听
gulp.task('css:build', function () {
    buildCss();
});

// 移动img html js css
gulp.task('file:copy', function () {
    // 复制 html
    gulp.src('./*.html')
        .pipe(gulp.dest('./dist'));

    // 复制 js
    gulp.src(['./js/*.js', './js/**/*'])
        .pipe(gulp.dest('./dist/js'));

    // 复制 img
    gulp.src(['./img/*', './img/**/*'])
        .pipe(gulp.dest('./dist/img'));

    // 复制 css
    gulp.src('./css/*.css')
        .pipe(gulp.dest('./dist/css'));
});

gulp.task('zip', function () {
    gulp.src(['./dist/*', './dist/**/*'])
        .pipe(zip('sae.zip'))
        .pipe(gulp.dest('./dist'));
});

gulp.task('build', function () {
    // 复制 html
    runSequence('clean', ['css:build'], 'file:copy', function () {
        console.log('build boom!');
    });
});

创建json文件package.json文件

{
  "name": "cofco",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "dev": "gulp",
    "build": "gulp build",
    "static": "http-server './dist' -p 5678 -o",
    "zip": "gulp zip"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "autoprefixer": "^6.5.3",
    "browser-sync": "^2.18.2",
    "del": "^2.2.2",
    "gulp": "^3.9.1",
    "gulp-plumber": "^1.1.0",
    "gulp-postcss": "^6.2.0",
    "gulp-rename": "^1.2.2",
    "gulp-zip": "^3.2.0",
    "http-server": "^0.9.0",
    "postcss-inline-comment": "^3.0.0",
    "postcss-sassy-mixins": "^2.0.0",
    "postcss-scss": "^0.4.0",
    "postcss-simple-extend": "^1.0.0",
    "postcss-strip-inline-comments": "^0.1.5",
    "precss": "^1.4.0",
    "run-sequence": "^1.2.2"
  }
}

启动cmd ,先进入目录文件夹,在下载gulp要用到的各种包输入命令

npm install 

下载好各种包之后就可以运行了

npm run dev
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值