gulp-notify處理報錯----gulp系列(二)

上一節,以less爲例,入門了gulp,併爲任務結構作了抽離。

 

 前端們,gulp該用起來了,簡單的demo入門——gulp系列(一)

 

本節學習下gulp-notify,官方這樣解釋的:html

gulp-notify :

gulp plugin to send messages based on Vinyl Files or Errors to Mac OS X, Linux or Windows using the node-notifier module. Fallbacks to Growl or simply logging前端

 

目的:node

咱們用notify的功能主要有兩點,顯示報錯信息和報錯後不終止當前gulp任務。git

拿系列(一)來講,less若是出現編譯錯誤,就會報錯而後終止任務,這時less修改正確後,你還得手動重啓gulp任務。github

 

開始:npm

如今,咱們在系列(一)的基礎上,新建(檢出)一個分支,添加notify功能gulp

 

1.安裝gulp-notify: npm install --save-dev gulp-notifyapp

 

2.在gulp文件夾裏新建一個目錄,名叫util,目錄裏新建文件handleErrors.js用來配置notifyless

                       

handleError.js代碼以下:post

var notify = require("gulp-notify");

module.exports = function(){

    var args = Array.prototype.slice.call(arguments);

    notify.onError({
        title: 'compile error',
        message: '<%=error.message %>'
    }).apply(this, args);//替換爲當前對象

    this.emit();//提交
}

 

3.在less中引用,如今將less.js修改成以下:

var gulp = require('gulp');
var less = require('gulp-less');
var config = require('../config').less;
var handleErrors = require('../util/handleErrors');

gulp.task('less', function(){
    return gulp.src(config.src)        //less源文件
        .pipe(less(config.settings))   //執行編譯
        .on('error', handleErrors)     //交給notify處理錯誤
        .pipe(gulp.dest(config.dest))  //輸出目錄
});

 

最終:

若是出現less錯誤,便會輸出錯誤信息並繼續gulp任務

 

仍是那句話多看官方文檔。

 

>>> github 地址,請選擇  notify  分支<<<

相關文章
相關標籤/搜索