Napisałem funkcję, którą chciałbym użyć jako zadanie Grunt. Mogę to zrobić, dodając to do Gruntfile:Rejestrowanie zadań Grunta, których kod znajduje się w zewnętrznych plikach JavaScript
Jednak lepiej jest zachować kod funkcji w oddzielnym pliku. Mam zamiar zdefiniować kilka takich niestandardowych zadań i nie chcę nadpisywać pliku Gruntfile.
Nie jestem pewien, jaki jest preferowany sposób rejestrowania takich zadań. Znalazłem to do pracy:
grunt.registerTask('foo', function() {
require('./path/to/foo.js')(grunt);
});
Tak, mam funkcję inline jak w przykładzie na pięści, ale tym razem, jestem ładowanie zewnętrznego pliku i powołując go natychmiast. W tym pliku zewnętrznym muszę oczywiście napisać:
module.exports = function (grunt) {
// code here
}
Działa, ale czuje się hackish. Czy istnieje lepszy sposób na zrobienie tego?
i jak mogę ponownie napisać moja funkcja jako zadanie? Jaka byłaby najprostsza konfiguracja. Po prostu mam funkcję, którą chcę powiązać z nazwą, aby móc wywołać ją z 'grunt name' w linii poleceń. –
Właśnie zredagowałem moją odpowiedź. – Krasimir
Próbowałem tego wzoru. To nie działa. W wierszu poleceń pojawia się komunikat "Ostrzeżenie: Zadanie" foo "nie znaleziono". Próbowałem określić ścieżkę z wiodącym '. /', Wiodącym '/' i bez nich. –