zoukankan      html  css  js  c++  java
  • gulp配置文件(gulpfile.js)

    需要安装的插件

    "gulp": "^3.9.1",
    "gulp-clean": "^0.3.2",
    "gulp-concat": "^2.6.1",
    "gulp-connect": "^5.0.0",
    "gulp-cssmin": "^0.2.0",
    "gulp-imagemin": "^3.3.0",
    "gulp-less": "^3.3.2",
    "gulp-load-plugins": "^1.5.0",
    "gulp-minify-css": "^1.2.4",
    "gulp-uglify": "^3.0.0",
    "open": "0.0.5",
    "serve": "^6.0.0"
    npm i --save-dev gulp gulp-clean gulp-concat gulp-connect  gulp-imagemin gulp-less gulp-load-plugins gulp-minify-css gulp-uglify open serve


     1 <script>
     2 var gulp=require('gulp');   
     3 var $=require('gulp-load-plugins')();//实例化 方便调用 gulp-minify-css gulp-uglify 
     4 var open=require('open');   // 实例化open方法
     5 var app={  
     6     srcPath:'src/',  //开发目录
     7     devPath:'build/', //生产目录
     8     prdPath:'dist/'//发布目录(用于发布)
     9 };
    10 
    11 gulp.task('lib',function () {            //为事件命名
    12     gulp.src('bower_comments/**/*.js')  //复制项目所依赖的js(如:通过bower安装的angular.js)
    13     .pipe(gulp.dest(app.devPath+'vendor'))  //将文件黏贴到生产目录
    14     .pipe(gulp.dest(app.prdPath+'vendor'))  //将文件黏贴到发布目录
    15         .pipe($.connect.reload());          //监测文件改变后重新运行黏贴复制
    16 });
    17 
    18 gulp.task('html',function () {
    19     gulp.src(app.srcPath+'**/*.html')  //复制开发目录下的所有html文件
    20         .pipe(gulp.dest(app.devPath))  //将文件黏贴到生产目录
    21         .pipe(gulp.dest(app.prdPath))  //将文件黏贴到发布目录
    22         .pipe($.connect.reload());
    23 });
    24 
    25 gulp.task('json',function () {
    26     gulp.src(app.srcPath+'data/**/*.json')   //复制开发目录下的所有json文件
    27         .pipe(gulp.dest(app.devPath+'data'))
    28         .pipe(gulp.dest(app.prdPath+'data'))
    29         .pipe($.connect.reload());
    30 });
    31 
    32 
    33 gulp.task('less',function () {
    34    gulp.src(app.srcPath+'style/index.less')
    35        .pipe($.less())                      //将less文件编译为css
    36        .pipe(gulp.dest(app.devPath+'css'))  //将编译后的css文件黏贴到生产目录
    37        .pipe($.minifyCss())   //用gulp-minify-css压缩css文件
    38        .pipe(gulp.dest(app.prdPath+'css'))  //
    39        .pipe($.connect.reload());
    40 });
    41 gulp.task('css',function () {
    42    gulp.src(app.srcPath+"style/*.css")
    43        .pipe(gulp.dest(app.prdPath+'css'))
    44        .pipe(gulp.dest(app.devPath+"css"))
    45        .pipe($.connect.reload());
    46 });
    47 gulp.task('js',function () {
    48     gulp.src(app.srcPath+'script/**/*.js')
    49         .pipe($.concat('index.js'))
    50         .pipe(gulp.dest(app.devPath+'js'))
    51         .pipe($.uglify())           //用gulp-uglify压缩js文件
    52         .pipe(gulp.dest(app.prdPath+'js'))
    53         .pipe($.connect.reload());
    54 });
    55 
    56 
    57 gulp.task('img',function () {
    58     gulp.src(app.srcPath+'image/**/*')
    59         .pipe($.imagemin())    //通过 gulp-imagemin 压缩图片文件
    60         .pipe(gulp.dest(app.devPath+"image"))
    61         .pipe(gulp.dest(app.prdPath+'image'))
    62         .pipe($.connect.reload());
    63 });
    64 
    65 gulp.task('build',['img','less','js','html','lib','json','css']);  //将多个命令整合为一个命令方便运行
    66 
    67 gulp.task('serve',['build'],function () {   //开启一个本地服务器,方便浏览调试
    68     $.connect.server({           //
    69         root:[app.prdPath],     // 设置服务器根目录
    70         livereload:true,    //启动服务,自动打开浏览器(低端浏览不支持)
    71         port:1234       //定义本地浏览器端口号(不与其他端口冲突任意定义)
    72     });
    73     open('http://localhost:1234');   //打开本地服务器的主页
    74     gulp.watch(app.srcPath+'script/**/*.js',['js']);   //监听js文件目录,文件改变重新启动 js 任务
    75     // gulp.watch('bower_comments/**/*',['lib']);       
    76     gulp.watch(app.srcPath+'style/**/*.less',['less']);//监听less文件目录,文件改变重新启动 less 任务
    77     gulp.watch(app.srcPath+'**/*.html',['html']);
    78     gulp.watch(app.srcPath+'data/**/*.json',['json']);
    79     gulp.watch(app.srcPath+'image/**/*',['img']);
    80 
    81 });
    82 
    83 gulp.task('clean',function () {   //清除 生产目录 和发布目录的全部文件
    84     gulp.src([app.devPath,app.prdPath])
    85         .pipe($.clean())
    86 });
    87 
    88 gulp.task('default',['serve']);   //定义一个默认任务, 在命令行中只需要 输入 gulp  不需要 跟任务名
    89 </script>    
  • 相关阅读:
    电脑一族,打电脑时候的健康的坐姿
    根据时间戳,增量同步数据的解决办法
    写在前面
    《T-GCN: A Temporal Graph Convolutional Network for Traffic Prediction》 论文解读
    关于Graph Convolutional Network的初步理解
    图形学_opengl纹理映射
    推荐算法_CIKM-2019-AnalytiCup 冠军源码解读_2
    推荐算法_CIKM-2019-AnalytiCup 冠军源码解读
    leetcode_雇佣 K 名工人的最低成本(优先级队列,堆排序)
    图形学_Bezier曲线
  • 原文地址:https://www.cnblogs.com/wennice/p/7151360.html
Copyright © 2011-2022 走看看