0

コンパイルする必要のない、または新しい場所に保存する必要のない保存済みファイルを gulp-tap に渡して、外部スクリプトを実行できるようにしたいと考えています。

現在、完全なディレクトリを監視し、保存するたびにディレクトリ全体をアップロードします。

gulp.task('shopify_theme',function(){
gulp.src( './theme/**/*.liquid' )
    .pipe(tap(function(file){
          upload(file);
    }));
})

そしてこれがアップロード部分です(テーマはアセットをshopifyにアップロードするアプリです)

var upload = function( file ){
var splitPath = file.path.split('theme/').pop();
run('theme upload ' + splitPath, { cwd: 'theme' }).exec();
};

/theme ディレクトリに Liquid ファイルを保存するたびに、すべてのファイル (theme/**/*.liquid) がアップロードされます。gulp-changed は、タスクの実行時に宛先とソースが同じであるため、機能しません。

変更されたファイルのみをアップロードする最善の方法は何ですか?

4

1 に答える 1

0

gulp.watch個々のファイルへの変更を監視するために使用できます。

var upload = function(filePath){
  var splitPath = filePath.split('theme/').pop();
  run('theme upload ' + splitPath, { cwd: 'theme' }).exec();
};

gulp.watch('./theme/**/*.liquid', function(evnt) {
  upload(evnt.path);
});
于 2014-09-05T16:15:39.500 に答える