| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387 | /** * Created by chen on 2017/9/26. */let gulp =require( 'gulp');let gulpLoadPlugins = require('gulp-load-plugins');let del = require('del');let uglify = require('gulp-uglify-es').default;let config = require("./config/gulpConfig.js");const $ = gulpLoadPlugins();let common_jspaths=config.common_jspaths;let common_css=config.common_css;let pm_jspaths=config.pm_jspaths;let pm_csspaths=config.pm_css;let login_jspaths=config.login_jspaths;let main_jspaths=config.main_jspaths;let main_csspaths=config.main_css;let compleGlj_jspaths = config.compleGlj_jspaths;let compleGlj_csspaths = config.compleGlj_css;let compleRation_ration_jspaths = config.compleRation_ration_jspaths;let compleRation_ration_csspaths = config.compleRation_ration_css;let compleRation_glj_jspaths = config.compleRation_glj_jspaths;let compleRation_glj_csspaths = config.compleRation_glj_css;let compleRation_coe_jspaths = config.compleRation_coe_jspaths;let compleRation_coe_csspaths = config.compleRation_coe_css;let compleRation_inst_csspaths = config.compleRation_inst_css;let compleRation_inst_jspaths = config.compleRation_inst_jspaths;let unitPrice_jspaths = config.unitPrice_jspaths;let version=config.version;let cssDest='web/dest/css';let scriptsDest='web/dest/scripts';let commonOptions={    jspaths:common_jspaths,    csspaths:common_css,    concatName:'common.all.min'};let headerOptions={    version:version,    scriptsDest:scriptsDest,    concatName:'header.all.min',    srcHtml:'web/src/html/common/header.html',    htmlDest:'web/common/html',    htmlName:'header.html',    injectList:['web/dest/scripts/common.all.min.'+version+'.js']};let loginOptions={    version:version,    scriptsDest:scriptsDest,    jspaths:login_jspaths,    concatName:'login.all.min',    srcHtml:'web/src/html/login/login.html',    htmlDest:'web/users/html',    htmlName:'login.html',    injectList:[  'web/dest/scripts/common.all.min.'+version+'.js',        'web/dest/scripts/login.all.min.'+version+'.js',        'web/dest/css/common.all.min.'+version+'.css']}let pmOptions={    version:version,    scriptsDest:scriptsDest,    jspaths:pm_jspaths,    csspaths:pm_csspaths,    concatName:'pm.all.min',    srcHtml:'web/src/html/pm/!*.html',    htmlDest:'web/building_saas/pm/html',    htmlName:'project-management.html',    injectList:['web/dest/scripts/pm.all.min.'+version+'.js',        'web/dest/css/common.all.min.'+version+'.css',        'web/dest/css/pm.all.min.'+version+'.css']};let mainOptions={    version:version,    scriptsDest:scriptsDest,    jspaths:main_jspaths,    csspaths:main_csspaths,    concatName:'main.all.min',    srcHtml:'web/src/html/main/main.html',    htmlDest:'web/building_saas/main/html',    htmlName:'main.html',    injectList:['web/dest/scripts/main.all.min.'+version+'.js',        'web/dest/css/common.all.min.'+version+'.css',        'web/dest/css/main.all.min.'+version+'.css']}let compleGljOptions = {    version: version,    scriptsDest: scriptsDest,    jspaths: compleGlj_jspaths,    csspaths: compleGlj_csspaths,    concatName: 'compleGlj.all.min',    srcHtml: 'web/src/html/complementary_glj_lib/tools-gongliaoji.html',    htmlDest: 'web/building_saas/complementary_glj_lib/html',    htmlName: 'tools-gongliaoji.html',    injectList: [        'web/dest/scripts/compleGlj.all.min.' + version + '.js',        'web/dest/css/compleGlj.all.min.' + version + '.css',        'web/dest/css/common.all.min.' + version + '.css'    ]};let compleRation_rationOptions = {    version: version,    scriptsDest: scriptsDest,    jspaths: compleRation_ration_jspaths,    csspaths: compleRation_ration_csspaths,    concatName: 'compleRation_ration.all.min',    srcHtml: 'web/src/html/complementary_ration_lib/dinge.html',    htmlDest: 'web/building_saas/complementary_ration_lib/html',    htmlName: 'dinge.html',    injectList: [        'web/dest/scripts/compleRation_ration.all.min.' + version + '.js',        'web/dest/css/compleRation_ration.all.min.' + version + '.css',        'web/dest/css/common.all.min.' + version + '.css'    ]};let compleRation_gljOptions = {    version: version,    scriptsDest: scriptsDest,    jspaths: compleRation_glj_jspaths,    csspaths: compleRation_glj_csspaths,    concatName: 'compleRation_glj.all.min',    srcHtml: 'web/src/html/complementary_ration_lib/gongliao.html',    htmlDest: 'web/building_saas/complementary_ration_lib/html',    htmlName: 'gongliao.html',    injectList: [        'web/dest/scripts/compleRation_glj.all.min.' + version + '.js',        'web/dest/scripts/compleRation_glj.all.min.' + version + '.css',        'web/dest/css/common.all.min.' + version + '.css'    ]};let compleRation_coeOptions = {    version: version,    scriptsDest: scriptsDest,    jspaths: compleRation_coe_jspaths,    csspaths: compleRation_coe_csspaths,    concatName: 'compleRation_coe.all.min',    srcHtml: 'web/src/html/complementary_ration_lib/fuzhu.html',    htmlDest: 'web/building_saas/complementary_ration_lib/html',    htmlName: 'fuzhu.html',    injectList: [        'web/dest/scripts/compleRation_coe.all.min.' + version + '.js',        'web/dest/scripts/compleRation_coe.all.min.' + version + '.css',        'web/dest/css/common.all.min.' + version + '.css'    ]};let compleRation_instOptions = {    version: version,    scriptsDest: scriptsDest,    jspaths: compleRation_inst_jspaths,    csspaths: compleRation_inst_csspaths,    concatName: 'compleRation_inst.all.min',    srcHtml: 'web/src/html/complementary_ration_lib/anzhuang.html',    htmlDest: 'web/building_saas/complementary_ration_lib/html',    htmlName: 'anzhuang.html',    injectList: [        'web/dest/scripts/compleRation_inst.all.min.' + version + '.js',        'web/dest/scripts/compleRation_inst.all.min.' + version + '.css',        'web/dest/css/common.all.min.' + version + '.css'    ]}let unitPriceOptions={  version:version,  scriptsDest:scriptsDest,  jspaths:unitPrice_jspaths,  concatName:'unitPrice.all.min',  htmlDest:'web/building_saas/unit_price_file',  htmlName:'index.html',  injectList:['web/dest/scripts/unitPrice.all.min.'+version+'.js']}function minify(options,done) {    if(options.jspaths){        return gulp.src(options.jspaths)            .pipe($.plumber())            .pipe(uglify())            .pipe($.concat(options.concatName+"."+version+".js"))            .pipe(gulp.dest(scriptsDest));    }    return done();}function css(options,done) {    if(options.csspaths && options.csspaths.length > 0){        return gulp.src(options.csspaths)            .pipe($.plumber())            .pipe($.cssnano({reduceIdents: false}))            .pipe($.concat(options.concatName+"."+version+".css"))            .pipe(gulp.dest(cssDest));    }    if(done) return done();}function inject(options) {    var target = gulp.src(options.htmlDest+'/'+options.htmlName);    var sources = gulp.src(options.injectList, {read: false,allowEmpty: true});    return target.pipe($.plumber())        .pipe($.inject(sources))        .pipe(gulp.dest(options.htmlDest));}function htmlmin(options) {    return gulp.src(options.htmlDest+'/*.html')       // .pipe($.htmlmin({collapseWhitespace: true}))        .pipe(gulp.dest(options.htmlDest));}gulp.task('minify', function (){    return minify(commonOptions);});gulp.task('css',function () {    return css(commonOptions);})gulp.task('common', gulp.series('minify','css'));gulp.task('login_minify', function (){  return minify(loginOptions);});gulp.task('login_css',function (done) {    return css(loginOptions,done);})gulp.task('login_inject', gulp.series('login_minify','login_css',function () {  return inject(loginOptions);}))gulp.task('login',gulp.series('login_inject',function (){  return htmlmin(loginOptions);}));gulp.task('header_minify', function (done){  return minify(headerOptions,done);});gulp.task('header_css',function (done) {    return css(headerOptions,done);})gulp.task('header_inject', gulp.series('header_minify','header_css',function () {  return inject(headerOptions);}))gulp.task('header',gulp.series('header_inject', function (){  return htmlmin(headerOptions);}));gulp.task('pm_minify', function (){  return minify(pmOptions);});gulp.task('pm_css',function (done) {    return css(pmOptions,done);})gulp.task('pm_inject',gulp.series('pm_minify','pm_css',function () {  return inject(pmOptions);}))gulp.task('pm',gulp.series('pm_inject', function (){  return htmlmin(pmOptions);}));gulp.task('main_minify', function (){  return minify(mainOptions);});gulp.task('main_css',function (done) {    return css(mainOptions,done);})gulp.task('main_inject',gulp.series('main_minify',function () {//, ['main_minify','main_css'  ] main css 打包到一起会出现样式冲突问题, 现改成不打包return inject(mainOptions);}))gulp.task('main',gulp.series('main_inject', function (){  return htmlmin(mainOptions);}));gulp.task('compleGlj_minify', function () {  return minify(compleGljOptions);});gulp.task('compleGlj_css', function (done) {    return css(compleGljOptions,done);});gulp.task('compleGlj_inject',  gulp.series('compleGlj_minify', 'compleGlj_css', function () {  return inject(compleGljOptions);}));gulp.task('compleGlj', gulp.series('compleGlj_inject', function () {  return htmlmin(compleGljOptions);}));gulp.task('compleRation_ration_minify', function () {  return minify(compleRation_rationOptions);});gulp.task('compleRation_ration_css', function (done) {    return css(compleRation_rationOptions,done);});gulp.task('compleRation_ration_inject',  gulp.series('compleRation_ration_minify', 'compleRation_ration_css', function () {  return inject(compleRation_rationOptions);}));gulp.task('compleRation_ration', gulp.series('compleRation_ration_inject', function () {  return htmlmin(compleRation_rationOptions);}));gulp.task('compleRation_glj_minify', function () {  return minify(compleRation_gljOptions);});gulp.task('compleRation_glj_css', function (done) {    return css(compleRation_gljOptions,done);});gulp.task('compleRation_glj_inject',  gulp.series('compleRation_glj_minify', 'compleRation_glj_css', function () {  return inject(compleRation_gljOptions);}));gulp.task('compleRation_glj', gulp.series('compleRation_glj_inject', function () {  return htmlmin(compleRation_gljOptions);}));gulp.task('compleRation_coe_minify', function () {  return minify(compleRation_coeOptions);});gulp.task('compleRation_coe_css', function (done) {    return css(compleRation_coeOptions,done);});gulp.task('compleRation_coe_inject',  gulp.series('compleRation_coe_minify', 'compleRation_coe_css', function () {  return inject(compleRation_coeOptions);}));gulp.task('compleRation_coe', gulp.series('compleRation_coe_inject', function () {  return htmlmin(compleRation_coeOptions);}));gulp.task('compleRation_inst_minify', function () {  return minify(compleRation_instOptions);});gulp.task('compleRation_inst_css', function (done) {    return css(compleRation_instOptions,done);});gulp.task('compleRation_inst_inject',  gulp.series('compleRation_inst_minify', 'compleRation_inst_css', function () {  return inject(compleRation_instOptions);}));gulp.task('compleRation_inst', gulp.series('compleRation_inst_inject', function () {  return htmlmin(compleRation_instOptions);}));gulp.task('unitPrice_minify', function (){  return minify(unitPriceOptions);});gulp.task('unitPrice_inject',gulp.series('unitPrice_minify',function (){  return inject(unitPriceOptions);}))gulp.task('unit_price',gulp.series('unitPrice_inject', function (){  return htmlmin(unitPriceOptions);}));gulp.task('build', gulp.series('common','header','login','pm','main', 'compleGlj', 'compleRation_ration', 'compleRation_glj', 'compleRation_coe', 'compleRation_inst','unit_price'));
 |