本節學習下gulp-notify,官方這樣解釋的:html
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任務
仍是那句話多看官方文檔。