スニペットでは次のようになります:
gulp.task "coffee", ->
gulp.src("src/server/**/*.coffee")
.pipe(coffee {bare: true}).on("error",gutil.log)
.pipe(gulp.dest "bin")
gulp.task "clean",->
gulp.src("bin", {read:false})
.pipe clean
force:true
gulp.task 'develop',['clean','coffee'], ->
console.log "run something else"
develop
タスクで実行しclean
、完了したら実行しcoffee
、完了したら別の何かを実行したいのですが、それがわかりません。この部分は機能しません。アドバイスをお願いします。
ベストアンサー1
デフォルトでは、gulp は明示的な依存関係がない限り、タスクを同時に実行します。これは、clean
依存関係は望まないが、他のすべてのタスクよりも先に実行する必要がある などのタスクにはあまり役立ちません。
私が書いたプラグrun-sequence
イン特に gulp でこの問題を修正します。インストールしたら、次のように使用します。
var runSequence = require('run-sequence');
gulp.task('develop', function(done) {
runSequence('clean', 'coffee', function() {
console.log('Run something else');
done();
});
});
詳細な手順はパッケージの README で読むことができます。また、いくつかのタスク セットを同時に実行することもサポートされています。
ご注意ください。(事実上)gulpの次のメジャーリリースで修正される、依存関係の自動順序付けを完全に排除し、run-sequence
実行順序を手動で指定できる に似たツールを提供しているためです。
ただし、これは重大な重大な変更であるため、今すぐ使用できるのに待つ理由はありませんrun-sequence
。