2017-07-26 13 views
0

いくつかのファイルが変更されたときにgulpタスクをトリガーするgulp-watchを設定しようとしています。テキストをコンソールに:ファイルが「FilesChanged」タスクが起動だろうと私は「ファイルを変更する」を参照してくださいしたい場合、私はそれをしたいと思い変更するたびGulp Watchコールバックタスクが起動しない

gulp.task('watchChanges', function(cb){ 
    console.log("Looking for file changes in " + watchPath+"."); 

    return watch(watchPath, ['FilesChanged']); 
}); 

gulp.task('FilesChanged', function (cb){ 
    FilesChanged(); 
    cb(); 
}) 

function FilesChanged() 
{ 
    console.log("Files changed:") 
} 

:この目的のために私は次のコードを使用しています。これは起こりません。私はこれに私のwatchChangesタスクを変更

:コードの最初の部分は、正しく実行しない理由

gulp.task('watchChanges', function(cb){ 
    console.log("Looking for file changes in " + watchPath+"."); 

    return watch(watchPath, FilesChanged); 
}); 

は、誰もが説明できますか?

+0

gulp.watchを使用したい、またはgulp.watchを使用する予定の時計機能がありますか?あなたが時計機能を持っているなら、それはどのように見えるのですか?そこでは、ガルプウォッチを使っていますか?もっと情報が必要です。 Gulp-watchには、作業例のように関数を渡すことはできますが、タスク名のリストは渡すことはできません。 – Mark

+0

@マーク私はgulp-watchを使用しています。私のコードの一部を例に含めるのを忘れた: 'var gulp = require( 'gulp'); var watch = require( 'gulp-watch'); ' –

答えて

0

あなたがその関数の定義を見ればあなたは一口-時計を使用しているので:

は、あなたはそれがコールバックを取ることがわかります

時計(グロブ、[オプション、コールバック])機能があなたの理由です

リターンウォッチ(watchPath、FilesChanged);

作品と

リターン時計(watchPath、[ 'FilesChanged']);

はありません。飲み込む-時計はgulp.watchなどのタスクの配列を取らないだろう。

gulp.watch(グロブ[、付き合え]、タスク)

一口ウォッチとgulp.watchは完全に2つです異なるもの。あなたは、ファイルが処理されているかを確認get the current file nameからの提案のいずれかを試してみる場合あなたはおそらくしたいことは

gulp.task('watchChanges', function(cb){ 
    console.log("Looking for file changes in " + watchPath+"."); 

    gulp.watch(watchPath, ['FilesChanged']); 
}); 

です。

+0

お返事ありがとうございます。私は実際に腕時計や腕時計の機能定義を調べました。 最後の例に自分のコードを修正しましたが、依然として必要な結果が得られません。 だから、この作品: '見る(watchPath、FilesChanged) .pipe(デバッグを());' しかし、これにはない: 'gulp.watch(watchPath、[ 'FilesChanged']) .pipe(デバッグ()); ' –

関連する問題