2014-09-25 21 views
7

Sto tentando di impostare grunt-notify con grunt-contrib-less e grunt-contrib-watch. Generalmente funziona bene, ma non riesco a ottenere grunt-notify per notificarmi quando grunt-less è eseguito con successo.grunt-notify: non si attiva in caso di successo

Se qualcuno ha qualche idea su come impostare questo o eseguire il debug, felice di avere qualsiasi input.


completa info:

Ho installato grugnito-notifica per attivare ogni volta meno è eseguito utilizzando un orologio. Funziona alla grande quando l'attività di meno ha esito negativo. mi dà un grande errore popup:

image

Per riferimento questo è l'output della console:

image

Quando meno riesce, non ricevo alcuna notifica. Vorrei ricevere una notifica ma non riesco a capire come abilitarlo.

Questa è l'uscita della console quando meno riesce:

image

Questa è la GruntFile che sto usando:

module.exports = function(grunt) { 

    grunt.initConfig({ 

     less: { 
      development: { 
       options: { 
        compress: true 
       }, 
       files: { 
        "FILE.css": "FILE2.less" 
       } 
      } 
     }, 

     watch: { 
      less: { 
       files: '**/*.less', 
       tasks: ['less', 'notify_hooks'] 
      } 
     }, 


     notify_hooks: { 
      options: { 
       message: "MESSAGE" 
      } 

     } 


    }); 

    grunt.loadNpmTasks('grunt-contrib-less'); 
    grunt.loadNpmTasks('grunt-contrib-watch'); 
    grunt.loadNpmTasks('grunt-notify'); 

    grunt.registerTask("default", ['less']); 

}; 

Original question on Github

risposta

9

È necessario aggiungi un messaggio per y il nostro compito per il gruntfile e specificare per quale attività fornirà quel messaggio. Vedi sotto

notify: { 
    less:{ 
     options:{ 
      title: "CSS Files built", 
      message: "Less task complete" 
     } 
    } 
} 

Come riferimento si può vedere li usano nel git repo readme

Aggiunto per completezza:

Come uKolka ha indicato di seguito, potrete anche richiedere il compito orologio da aggiornare come per la sua soluzione:

watch: { 
    less: { 
     files: '**/*.less', 
     tasks: ['less', 'notify:less'] 
    } 
}, 

Dove notify:less fa riferimento alla meno attività all'interno dell'oggetto di notifica.

+0

Grazie! Giuro che ci ho provato ieri, ma non ha funzionato. Funziona ora però, quindi grazie! - Accetterà questo come risposta accettata in 5 minuti (una volta consentito). – sixtyfootersdude

+0

Nessun problema, felice ha funzionato. – DavidT

8

Va notato che specifica il compito di notifica ...

notify: { 
    less:{ 
     options:{ 
      title: "CSS Files built" 
      message: "Less task complete" 
     } 
    } 
} 

... è solo una parte del gioco.

Inoltre, deve essere registrato in un'attività che si desidera venga attivata.

Così, per il codice di OP originale di lavorare

watch: { 
     less: { 
      files: '**/*.less', 
      tasks: ['less', 'notify_hooks'] 
     } 
    }, 

dovrebbe essere cambiata a

watch: { 
     less: { 
      files: '**/*.less', 
      tasks: ['less', 'notify:less'] 
     } 
    }, 

Questo fa riferimento al notify:less accennato in precedenza.

+0

Questa risposta ha la vera soluzione a dove la maggior parte delle persone potrebbe vacillare nel configurare le cose nel modo giusto. – Ikon