zoukankan      html  css  js  c++  java
  • gulp.js 的安装以及使用

    首先:电脑需要安装 Node.js 一个大绿色的安装按钮,点击就可以。
    但还是推荐,点击download选中一款适合电脑配置的版本。

    Node安装过程,就是下一步 and 下一步~~

    测试手否安装成功:

    node -v
    

    现在开始安装 gulp.js

    全局安装gulp
    npm install -g gulp
    
    安装好后,把gulp安装到本地
    npm install --save-dev  gulp
    

    现在可以用安装本地的方法分别把如下插件安装上:

    
        编译Sass (gulp-ruby-sass)与[gulp-sass]都可以
        Autoprefixer (gulp-autoprefixer)
        缩小化(minify)CSS (gulp-minify-css)
        JSHint (gulp-jshint)
        拼接 (gulp-concat)
        丑化(Uglify) (gulp-uglify)
        图片压缩 (gulp-imagemin)
        即时重整(LiveReload) (gulp-livereload)
        清理档案 (gulp-clean)
        图片快取,只有更改过得图片会进行压缩 (gulp-cache)
        更动通知 (gulp-notify)
    
    

    然后再跟目录内创建一个gulpfile.js的文件:

    // 引入 gulp
    var gulp = require('gulp'); 
    
    // 引入组件
    var jshint = require('gulp-jshint');
    var sass = require('gulp-sass');
    var concat = require('gulp-concat');
    var uglify = require('gulp-uglify');
    var rename = require('gulp-rename');
    
    // 检查脚本
    gulp.task('lint', function() {
        gulp.src('./js/*.js')
            .pipe(jshint())
            .pipe(jshint.reporter('default'));
    });
    
    // 编译Sass
    gulp.task('sass', function() {
        gulp.src('./scss/*.scss')
            .pipe(sass())
            .pipe(gulp.dest('./css'));
    });
    
    // 合并,压缩文件
    gulp.task('scripts', function() {
        gulp.src('./js/*.js')
            .pipe(concat('all.js'))
            .pipe(gulp.dest('./dist'))
            .pipe(rename('all.min.js'))
            .pipe(uglify())
            .pipe(gulp.dest('./dist'));
    });
    
    // 默认任务
    gulp.task('default', function(){
        gulp.run('lint', 'sass', 'scripts');
    
        // 监听文件变化
        gulp.watch('./js/*.js', function(){
            gulp.run('lint', 'sass', 'scripts');
        });
    });
    
    
    
    //后补,更加详细的注视
    // 引入 gulp
    var gulp = require('gulp'); 
    
    // 引入组件
    var uglify = require('gulp-uglify');  //压缩js
    var concat = require('gulp-concat');  //合并js
    var server = require('gulp-server-livereload');  //服务自动刷新
    var minifyCss = require('gulp-minify-css'); //压缩CSS
    var sourcemaps = require('gulp-sourcemaps');
    
    
    //不用配置只要服务启动,事后的所有操作都会自动刷新
    gulp.task('webserver', function() {
      gulp.src('.')
        .pipe(server({
          livereload: true,
          open: true,
          directoryListing: true
          //defaultFile: 'gulp.html'
        }));
    });
    
    // 合并/压缩文件js
    gulp.task('uglify-concat', function() { //合并/压缩
      return gulp.src('js/*.js')   //引入Js路径
        .pipe(uglify())         //压缩Js
        .pipe(concat('all.js'))  //合并Js
        .pipe(gulp.dest('dist'));  //压缩Js后生成的路径
    });
    
    //压缩CSS
    gulp.task('minify-css', function() {
      return gulp.src('./style/*.css')
        //.pipe(sourcemaps.init())  注视的这两个可以显示样式下的sourcemaps
        .pipe(minifyCss())
        //.pipe(sourcemaps.write())
        .pipe(gulp.dest('dist'));
    });
    
    
    // 默认任务
    gulp.task('default', function(){
        gulp.run('minify-css');    //run方法已经被淘汰了,可以尝试用继承的方式,或者用watch
    
        // 监听文件变化
        gulp.watch('js/*.js', function(){
            gulp.run('uglify-concat');
        });
    });
    

    这样就可以了:接下来介绍点细节与其它需要了解的。
    gulp只有五个方法: task,run,watch,src,和dest,在项目根目录新建一个js文件并命名为gulpfile.js

    另外,为何安装插件的时候需要加 --save-dev
    是想把插件放入开发列表里面,这样 npm install初始化安装的时候,就会根据这个表来进行相应下载。
    这个文件名为package.json
    当然这个文件可以复制粘贴,当然有一种方法可以初始化它。

    npm init
    

    根据步骤提示就可以自动生成了。具体文档内容请参考。linlincat 的 github
    这里面有个许可证号,之前是可随意配置的,现在不了解具体原因,默认就可以了。官网有详细解释。

    现在就可以放心使用你的gulp去执行[管理]你的项目了。

    {
    "name": "test", //项目名称(必须)
    "version": "1.0.0", //项目版本(必须)
    "description": "This is for study gulp project !", //项目描述(必须)
    "homepage": "http://www.dtao.org", //项目主页
    "repository": { //项目资源库
    "type": "git",
    "url": "https://git.oschina.net/xxxx"
    },
    "author": { //项目作者信息
    "name": "surging",
    "email": "surging2@qq.com"
    },
    "license": "ISC", //项目许可协议
    "devDependencies": { //项目依赖的插件
    "gulp": "^3.8.11",
    "gulp-less": "^3.0.0"
    }
    }

    通过分享,结交好友~ 如本文对您有益,请给予关注。转载请注明出处!-- 小数
  • 相关阅读:
    Unable to connect to web server 'IIS Express'(无法连接到Web服务器“IIS Express”)的解决方式-Jexus Manager
    temp_web
    使用Fluent配置表关系
    面试题链接记录
    面试题
    SQL语言基础
    .net core中DbProviderFactories配置问题
    Swagger UI in AspNetCore WebAPI
    JS实现国密算法SM2加密,后端Java解密
    Java读取磁盘指定扇区
  • 原文地址:https://www.cnblogs.com/mcat/p/4632796.html
Copyright © 2011-2022 走看看