forked from lynking/lynking.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgulpfile.js
63 lines (54 loc) · 1.48 KB
/
gulpfile.js
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
'use strict';
const gulp = require('gulp');
const minifyCSS = require('gulp-minify-css');
const uglify = require('gulp-uglifyjs');
const rename = require('gulp-rename');
const htmlreplace = require('gulp-html-replace');
const del = require('del');
gulp.task('default', function() {
runSequence(
'build',
'clean'
);
});
gulp.task('build', ['css', 'js'], function () {
return gulp.src('./index.src.html')
.pipe(htmlreplace({
'css': 'css/style.min.css?'+Date.now(),
'js': 'js/app.min.js?'+Date.now()
}))
.pipe(rename('index.html'))
.pipe(gulp.dest('./'));
// .pipe(function(db){
// del(['./.tmp'], {force: true}).then(db);
// });
});
gulp.task('css',['clean'], function() {
return gulp.src('./css/*.css')
.pipe(minifyCSS({keepBreaks: true}))
.pipe(rename({
suffix: '.min'
}))
.pipe(gulp.dest('./css'));
});
gulp.task('js', ['clean'], function() {
return gulp.src('./js/*.js')
.pipe(uglify({
mangle: false,
output: {
beautify: false
}
}))
.pipe(rename({
suffix: '.min'
}))
.pipe(gulp.dest('./js'));
})
gulp.task('tmp', function() {
return gulp.src('./src/*')
.pipe(gulp.dest('./.tmp'));
});
function cleanBuildFn() {
return del.sync(['./css/*.min.css', './js/*.min.js'], {force: true});
};
gulp.task('clean', cleanBuildFn);