gulp.watch()用來監視文件的變化,當文件發生變化後,我們可以利用它來執行相應的任務,例如文件壓縮等。其語法爲
- gulp.watch(glob[, opts], tasks);
glob 爲要監視的文件匹配模式,規則和用法與gulp.src()方法中的glob相同。 opts 爲一個可選的配置對象,通常不需要用到。 tasks 爲文件變化後要執行的任務,爲一個數組。
- gulp.task('uglify',function(){
- //do something
- });
- gulp.task('reload',function(){
- //do something
- });
- gulp.watch('js/**/*.js', ['uglify','reload']);
gulp.watch()還有另外一種使用方式:
- gulp.watch(glob[, opts, cb]);
glob和opts參數與第一種用法相同;
cb參數爲一個函數。每當監視的文件發生變化時,就會調用這個函數,並且會給它傳入一個對象,該對象包含了文件變化的一些信息,type屬性爲變化的類型,可以是added,changed,deleted;path屬性爲發生變化的文件的路徑。
- gulp.watch('js/**/*.js', function(event){
- console.log(event.type); //變化類型 added爲新增,deleted爲刪除,changed爲改變
- console.log(event.path); //變化的文件的路徑
- });