gulp打包实现版本控制

//引入gulp和gulp插件
//var gulp = require('gulp'),
//minifycss = require('gulp-minify-css'),
//concat = require('gulp-concat'),
//  uglify = require('gulp-uglify'),
//  rename = require('gulp-rename'),
//  del = require('del');
//  runSequence = require('run-sequence'),
//  rev = require('gulp-rev'),
//  revCollector = require('gulp-rev-collector');
var gulp = require('gulp'),
    runSequence = require('run-sequence'),
    rev = require('gulp-rev'),
    revCollector = require('gulp-rev-collector');
//定义css、js源文件路径
var cssSrc = '**/*.css',
    jsSrc = '**/*.js';
//CSS生成文件hash编码并生成 rev-manifest.json文件名对照映射
gulp.task('revCss', function(){
    return gulp.src(cssSrc)
        .pipe(rev())
        .pipe(rev.manifest())
        .pipe(gulp.dest('rev/css'));
});


//js生成文件hash编码并生成 rev-manifest.json文件名对照映射
gulp.task('revJs', function(){
    return gulp.src(jsSrc)
        .pipe(rev())
        .pipe(rev.manifest())
        .pipe(gulp.dest('rev/js'));
});


//Html替换css、js文件版本
gulp.task('revHtml', function () {
    return gulp.src(['rev/**/*.json', '*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('./'));
});
gulp.task('revHtml:app', function () {
    return gulp.src(['rev/**/*.json', 'app/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app'));
});
gulp.task('revHtml:404', function () {
    return gulp.src(['rev/**/*.json', 'app/404/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/404/view'));
});
gulp.task('revHtml:aboutUs', function () {
    return gulp.src(['rev/**/*.json', 'app/aboutUs/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/aboutUs/view'));
});
gulp.task('revHtml:activiesMonitoring', function () {
    return gulp.src(['rev/**/*.json', 'app/activiesMonitoring/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/activiesMonitoring/view'));
});
gulp.task('revHtml:channel', function () {
    return gulp.src(['rev/**/*.json', 'app/channel/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/channel/view'));
});
gulp.task('revHtml:dataStatistics', function () {
    return gulp.src(['rev/**/*.json', 'app/dataStatistics/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/dataStatistics/view'));
});
gulp.task('revHtml:details', function () {
    return gulp.src(['rev/**/*.json', 'app/details/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/details/view'));
});
gulp.task('revHtml:myActivities', function () {
    return gulp.src(['rev/**/*.json', 'app/myActivities/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/myActivities/view'));
});
gulp.task('revHtml:myTemp', function () {
    return gulp.src(['rev/**/*.json', 'app/myTemp/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/myTemp/view'));
});
gulp.task('revHtml:prize', function () {
    return gulp.src(['rev/**/*.json', 'app/prize/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/prize/view'));
});
gulp.task('revHtml:userGroup', function () {
    return gulp.src(['rev/**/*.json', 'app/userGroup/view/*.html'])
        .pipe(revCollector())
        .pipe(gulp.dest('app/userGroup/view'));
});
//开发构建
gulp.task('dev', function (done) {
    condition = false;
    runSequence(
        ['revCss'],
        ['revJs'],
        ['revHtml'],
        ['revHtml:app'],
        ['revHtml:404'],
        ['revHtml:aboutUs'],
        ['revHtml:activiesMonitoring'],
        ['revHtml:channel'],
        ['revHtml:dataStatistics'],
        ['revHtml:details'],
        ['revHtml:myActivities'],
        ['revHtml:myTemp'],
        ['revHtml:prize'],
        ['revHtml:userGroup'],
        done);
});
gulp.task('default', ['dev']);

猜你喜欢

转载自blog.csdn.net/qq_35425276/article/details/80598146