Регистрация задач Grunt, код которых находится во внешних файлах JavaScript

Я написал функцию, которую хотел бы использовать в качестве задачи Grunt. Я могу сделать это, добавив это в Gruntfile:

grunt.registerTask('foo', function () {
    // code here
});

Тем не менее, имеет смысл хранить код функции в отдельном файле. Я планирую определить кучу этих пользовательских задач, и я не хочу раздувать Gruntfile.

Я не уверен, что предпочтительный способ регистрации таких задач. Я нашел это, чтобы работать:

grunt.registerTask('foo', function () {
    require('./path/to/foo.js')(grunt);
});

Итак, у меня есть встроенная функция, как в первом примере, но на этот раз я загружаю внешний файл и сразу же вызываю его. В этом внешнем файле я, конечно, должен написать:

module.exports = function (grunt) {
    // code here
}

Это работает, но кажется хакерским. Есть ли более правильный способ сделать это?

Ответы на вопрос(2)

Ваш ответ на вопрос