gulpfile.js 3.6 KB
//导入工具包 require('node_modules里对应模块')
var gulp = require('gulp'), //本地安装gulp所用到的地方
    connect = require('gulp-connect'),
    open = require('gulp-open'),
    less = require('gulp-less'),
    jade = require('gulp-jade'),
    rename = require('gulp-rename'),
    header = require('gulp-header'),
    path = require('path'),
    uglify = require('gulp-uglify'),
    sourcemaps = require('gulp-sourcemaps'),
    minifyCSS = require('gulp-minify-css'),
    tap = require('gulp-tap'),
    concat = require('gulp-concat'),
    jshint = require('gulp-jshint'),
    stylish = require('jshint-stylish'),
    fs = require('fs'),
    svgSymbols = require('gulp-svg-symbols'),
    paths = {
        root: './',
        dist: {
            root: 'dist/',
            styles: 'dist/css/',
            fonts: 'dist/fonts/',
            scripts: 'dist/js/',
            images: 'dist/i/',
        },
        source: {
            root: 'src/',
            styles: 'src/css/',
            images: 'src/i/',
            fonts: 'src/fonts/',
            scripts: 'src/js/',
            vendor: 'src/vendor/',
            mk7: 'src/vendor/mk7/',
        },
    };

// gulp build
gulp.task('build', function () {
    gulp.src([
        paths.source.mk7 + 'js/require.js',
        paths.source.mk7 + 'js/require-css.js',
        paths.source.mk7 + 'js/app.js',
        paths.source.mk7 + 'js/controller.js',
        paths.source.mk7 + 'js/models.js',
        paths.source.mk7 + 'js/router.js',
        paths.source.mk7 + 'js/url.js',
        paths.source.mk7 + 'js/utils.js',
        paths.source.mk7 + 'js/view.js',
        paths.source.mk7 + 'js/widget.js',
        paths.source.mk7 + 'js/core.js',
    ]).pipe(concat('mk7.js'))
        .pipe(uglify())
        .pipe(gulp.dest(paths.dist.scripts));

    // Components JS
    gulp.src([paths.source.mk7 + 'cmpts/**/*.js'])
        .pipe(uglify())
        .pipe(gulp.dest(paths.dist.scripts + 'cmpts/'));
    // Components CSS
    gulp.src([paths.source.mk7 + 'cmpts/**/*.css'])
        .pipe(minifyCSS())
        .pipe(gulp.dest(paths.dist.scripts + 'cmpts/'));
    //CSS
    gulp.src([paths.source.mk7 + 'css/core.ios.css', paths.source.styles + 'iconfont.css', paths.source.styles + 'path.css',paths.source.mk7 + 'css/jw-style.css'])
        .pipe(concat('mk7.css'))
        .pipe(minifyCSS())
        .pipe(gulp.dest(paths.dist.styles));

    //-----------------------------------------------
    //default module (默认模块)
    gulp.src([paths.source.scripts + 'site/*.js'])
        .pipe(concat('site-app.js'))
        .pipe(uglify())
        .pipe(gulp.dest(paths.dist.scripts));
    //--------------------------------------------------

    //-----------------------------------------------
    //user module (用户模块)
    gulp.src([paths.source.scripts + 'user/*.js'])
        .pipe(concat('user-app.js'))
        .pipe(uglify())
        .pipe(gulp.dest(paths.dist.scripts));
    //--------------------------------------------------

    //-----------------------------------------------
    //order module (订单模块)
    gulp.src([paths.source.scripts + 'order/*.js'])
        .pipe(concat('order-app.js'))
        .pipe(uglify())
        .pipe(gulp.dest(paths.dist.scripts));
    //--------------------------------------------------


    //字体
    gulp.src([paths.source.fonts + '*'])
        .pipe(gulp.dest(paths.dist.fonts));
    //图片
    gulp.src([paths.source.images + '*'])
        .pipe(gulp.dest(paths.dist.images));
    //mk7的图片
    gulp.src([paths.source.mk7 + 'i/*'])
        .pipe(gulp.dest(paths.dist.images));
});

gulp.task('default', ['build']); //定义默认任务