gulp VS grunk

来源:互联网 发布:知乎网站概述 编辑:程序博客网 时间:2024/06/08 10:47

3. Gulp和Grunt的异同点

  • 易于使用:采用代码优于配置策略,Gulp让简单的事情继续简单,复杂的任务变得可管理。
  • 高效:通过利用Node.js强大的流,不需要往磁盘写中间文件,可以更快地完成构建。
  • 高质量:Gulp严格的插件指导方针,确保插件简单并且按你期望的方式工作。
  • 易于学习:通过把API降到最少,你能在很短的时间内学会Gulp。构建工作就像你设想的一样:是一系列流管道。

7. 差异和不同

  • 流:Gulp是一个基于流的构建系统,使用代码优于配置的策略。
  • 插件:Gulp的插件更纯粹,单一的功能,并坚持一个插件只做一件事。
  • 代码优于配置:维护Gulp更像是写代码,而且Gulp遵循CommonJS规范,因此跟写Node程序没有差别。
  • 没有产生中间文件

5. Gruntfile.js

module.exports = function(grunt) {    grunt.initConfig({        concat: {            'dist/all.js': ['src/*.js']        },        uglify: {            'dist/all.min.js': ['dist/all.js']        },        jshint: {            files: ['gruntfile.js', 'src/*.js']        },        watch: {            files: ['gruntfile.js', 'src/*.js'],            tasks: ['jshint', 'concat', 'uglify']        }    });    // Load Our Plugins    grunt.loadNpmTasks('grunt-contrib-jshint');    grunt.loadNpmTasks('grunt-contrib-concat');    grunt.loadNpmTasks('grunt-contrib-uglify');    grunt.loadNpmTasks('grunt-contrib-watch');    // Register Default Task    grunt.registerTask('default', ['jshint', 'concat', 'uglify']);};

6. Gulpfile.js

var gulp = require('gulp');var jshint = require('gulp-jshint');var concat = require('gulp-concat');var rename = require('gulp-rename');var uglify = require('gulp-uglify');// Lint JSgulp.task('lint', function() {    return gulp.src('src/*.js')        .pipe(jshint())        .pipe(jshint.reporter('default'));});// Concat & Minify JSgulp.task('minify', function(){    return gulp.src('src/*.js')        .pipe(concat('all.js'))        .pipe(gulp.dest('dist'))        .pipe(rename('all.min.js'))        .pipe(uglify())        .pipe(gulp.dest('dist'));});// Watch Our Filesgulp.task('watch', function() {    gulp.watch('src/*.js', ['lint', 'minify']);});// Defaultgulp.task('default', ['lint', 'minify', 'watch']);
http://www.benben.cc/blog/?p=407
0 0