Как вызвать другие задачи из моей пользовательской задачи * до того, как будет запущен мой код задачи?

Я пытаюсь создать настраиваемую задачу в grunt, которая автоматически вызывает свои "предварительные условия". Я не уверен, как это сделать. Документы Grunt.js показывают этот пример:

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
});

Я не хочу "enqueue bar и baz после foo", я хочу выполнить их там, где строка grunt.task.run, поэтому они выполняются до моего "Другого материала",.

Как это сделать?

Ответ 1

Я думаю, что ваш единственный способ сделать это в настоящее время будет через создание и дополнительную задачу

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']);