Ho scritto una funzione che vorrei utilizzare come attività di Grunt. Posso fare questo con l'aggiunta di questo al Gruntfile:Registrazione di attività di Grunt il cui codice si trova in file JavaScript esterni
grunt.registerTask('foo', function() {
// code here
});
Tuttavia, ha più senso per mantenere il codice di funzione in un file separato. Ho intenzione di definire un gruppo di questi compiti personalizzati e non voglio far ingrossare il Gruntfile.
Non sono sicuro di quale sia il modo preferito di registrare tali attività. Ho trovato questo per lavoro:
grunt.registerTask('foo', function() {
require('./path/to/foo.js')(grunt);
});
Quindi, sto avendo la funzione inline come nell'esempio pugno, ma questa volta, mi sto caricando un file esterno e invocando immediatamente. In quel file esterno, ovviamente, devo scrivere:
module.exports = function (grunt) {
// code here
}
Questo funziona, ma sembra di essere hacker. C'è un modo più corretto per farlo?
E come faccio a riscrivere la mia funzione come compito? Quale sarebbe la configurazione più semplice. Ho solo una funzione che voglio associare a un nome in modo da poterlo richiamare con 'grunt name' nella riga di comando. –
Ho appena modificato la mia risposta. – Krasimir
Ho provato questo modello. Non funziona. Prendo 'Warning: Task" foo "non trovato. Nella riga di comando. Ho provato a specificare il percorso sia con un ''// ', che porta '/' e senza quelli. –