2013-01-04 1 views
21

Mentre erano abituati ad usare Rakefile, Cakefile e Jakefile, avevano tutti un modo pratico di elencare le attività disponibili.Grunt (nodo) - Come mostrare le attività disponibili?

Come

jake -T 

jake db:dump  # Dump the database 
jake db:load  # Populate the database 

.etc.

o anche il filtraggio "jake -T dum", al solo spettacolo "il 'db jake:. Dump' compito

Quindi, c'è un modo per fare la stessa cosa usando grugnito pensavo? forse la creazione di un'attività di default che itera l'intero oggetto grugnito config e scrivere a stdout via console.log, ma qualcuno sa un modo migliore?

Grazie.

+1

Non voglio rispondere alla mia domanda, ma mi si avvicinò con un trucco estremamente sporco. 'grunt -h | sed -e '/ Attività disponibili /,/Attività eseguite /! d'' Sicuramente qualcuno con esperienza può inventarsi qualcosa di meglio? :) – borestad

risposta

11

per quanto ne so l'unico modo (ovviamente senza hack) per mostrare le attività disponibili utilizzando lo -h o --help opt ionico.

Come si può vedere nel grunt-cli source hanno chiaramente occupano circa soltanto -h (aiuto), -V (versione), e -v opzioni (verbose).

Quindi, penso che al momento sia necessario creare un'attività personalizzata per raggiungere il proprio obiettivo.

9

C'è un modo migliore! Attualmente sto lavorando su un plugin separato, grunt-available-tasks per ottenere questa funzionalità. Aggiungerlo al vostro progetto con:

npm install grunt-available-tasks --save-dev 

Poi gestita grunt availabletasks per ottenere un elenco delle attività. Si consiglia di alias per questo con tasks per risparmiare un po 'di battitura:

grunt.registerTask('tasks', ['availabletasks']); 

Poi, con un po' di configurazione è possibile ottenere elenchi come questo:

$ grunt tasks 
Running "availabletasks" task 

Deployment Tasks 
doc    => Build the documentation. 
production   => Build a complete distribution for production; stricter linting and a full browser test. 

Development Tasks 
default   => Build a development distribution. 
watch    > Run predefined tasks whenever watched files change. 

Done, without errors. 

È possibile filtrare, raggruppare e ordinare attività utilizzando un oggetto di configurazione nel tuo Gruntfile. A è disponibile nel README.

+0

L'attività "availabletasks" non è stata trovata. Probabilmente per lo stesso motivo per cui sto cercando di elencare le attività disponibili (risoluzione dei problemi). – rainabba

+1

Penso di aver postato questa risposta prima di rendere l'attività un'attività multipla; dovrai fare qualcosa come grunt.initConfig ({availabletasks: {tasks: {}}}); - trova il resto delle opzioni nel README. :-) – Ben

15

grunt --help elenca le attività disponibili, come da seguente answer.

uscita Esempio

..... 

Available tasks 
      clean Clean files and folders. *         
       jade Compile jade templates. *         
     web_server A Web Server similar to Python's SimpleHTTPServer, with 
       Cross-Origin Resource Sharing and No-Cache options. * 
+1

Questa è la risposta giusta e dovrebbe essere votata in alto. –

+0

Questa dovrebbe essere la risposta accettata ... – daviesgeek

+0

La risposta [in basso] (https: // StackOverflow.it/a/20229531/3384609) è meglio – Clintm