2013-02-26 4 views
11

Próbuję utworzyć niestandardowe zadanie w kroku, które automatycznie wywołuje jego "wymagania wstępne". Nie jestem pewien, jak to zrobić. Grunt.js docs pokazać przykład:Jak wywołać inne zadania z mojego niestandardowego zadania * przed uruchomieniem * mojego kodu zadania?

grunt.registerTask('foo', 'My "foo" task.', function() { 
    // Enqueue "bar" and "baz" tasks, to run after "foo" finishes, in-order. 
    grunt.task.run('bar', 'baz'); 
    ... // Other stuff here 
}); 

nie chce „enqueue bar i baz po foo”, chcę, aby wykonać je tam, gdzie linia grunt.task.run jest, więc zostanie wykonany przed moim „Inne rzeczy".

Jak to zrobić?

Odpowiedz

12

Myślę, że jedynym sposobem, aby to zrobić obecnie będzie poprzez tworzenie i dodatkowe zadanie

grunt.registerTask('fooTask', 'My "foo" task.', function() { 
    grunt.task.requires('bar'); // make sure bar was run and did not fail 
    grunt.task.requires('baz'); // make sure bar was run and did not fail 
    ... // Other stuff here 
}); 

grunt.registerTask('foo', 'My "foo" sequence.', ['bar', 'baz', 'fooTask']); 
+0

Dobrze, że to kindof rozczarowujące. Przynajmniej nie będę marnował więcej czasu na szukanie rozwiązania. Dzięki! – kikito