新版本的gulp使用exports导出任务,每个任务必须有一个参数用作回调函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
|
var gulp = require('gulp'); var sass = require('gulp-sass'); var connect = require('gulp-connect'); var minimist = require('minimist'); var rename = require('gulp-rename'); var plumber = require('gulp-plumber');
function compilerCSS(cb) { gulp.src('../practice/css/**/*.scss') .pipe(plumber()) .pipe(sass({ outputStyle: "expanded" })) .pipe(gulp.dest('../practice/css/')); cb(); }
function watch(cb) { gulp.watch('../practice/css/**/*.scss', gulp.series(compilerCSS)); gulp.watch(['../practice/*.html', '../practice/html/*.html', '../practice/*.js', '../practice/js/*.js', '../practice/css/*.css'], reload); cb(); }
function watchCss(cb) { gulp.watch('../practice/css/**/*.scss', gulp.series(compilerCSS)); cb(); }
function reload(cb) { gulp.src('../practice/**/*.html') .pipe(connect.reload()); cb(); }
function server(cb) { connect.server({ root: '../', port: 8080, livereload: true }) cb(); }
var options = minimist(process.argv.slice(2), { string: "env", });
function saveAll(cb) { gulp.src(['../practice/**/*.*', '!../practice/js/jquery/**/*.*', '!../practice/js/jsconfig.json']) .pipe(gulp.dest('../source/' + options.env)); cb(); }
function saveHTML(cb) { gulp.src(['../practice/*.html']).pipe(gulp.dest('../source/' + options.env)); gulp.src(['../practice/html/*.html']).pipe(gulp.dest('../source/' + options.env + '/html')); cb(); } function saveJavascript(cb) { gulp.src(['../practice/*.js']).pipe(gulp.dest('../source/' + options.env)); gulp.src(['../practice/js/*.js']).pipe(gulp.dest('../source/' + options.env + '/js')); gulp.src(['../practice/js/lib/jquery-3.5.1.min.js']).pipe(gulp.dest('../source/' + options.env + '/js/lib')); cb(); }
function saveCSS(cb) { gulp.src(['../practice/css/*.css', '../practice/css/[^_]*.scss']).pipe(gulp.dest('../source/' + options.env + '/css')); gulp.src('../practice/libs/bootstrap/css/bootstrap.min.css').pipe(gulp.dest('../source/' + options.env + '/libs/bootstrap/css')); cb(); } function savePHP(cb) { gulp.src(['../practice/php/*.php']).pipe(gulp.dest('../source/' + options.env + '/php')); cb(); } function saveImgDevelopment(cb) { gulp.src(['../practice/imgDevelopment/**/*.*']).pipe(gulp.dest('../source/' + options.env + '/imgDevelopment')); cb(); } var save;
if (options.env) { save = saveAll; } else { save = function (cb) { console.log('\033[31;43mrequire a directory name,you must input an extra parameter.\033[0m'); cb(); } }
exports.save = save;
exports.default = gulp.series(watch, server);
exports.watchCss = watchCss;
|