2013-06-05 14 views
5

Ho l'ultimo stack di yeoman, e ho appena aggiornato la webapp del generatore per eseguire il master in base a: https://github.com/yeoman/generator-webapp/pull/67 per far funzionare correttamente il livereload.Yeoman: attivazione di LiveReload sul cambio di file SCSS

I file HTML e i file CSS sembrano funzionare correttamente con liverpool, ma i file scss non attivano la ricarica. Ecco un frammento di uscita:

OK 
>> File "app/index.html" changed. 


Running "watch" task 
... Reload app/index.html ... 
... Reload app/index.html ... 
Completed in 0.005s at Wed Jun 05 2013 22:45:46 GMT+0100 (BST) - Waiting... 
OK 
>> File "app/styles/main.scss" changed. 


Running "compass:server" (compass) task 
overwrite .tmp/styles/main.css 

Running "watch" task 
Completed in 1.101s at Wed Jun 05 2013 22:45:57 GMT+0100 (BST) - Waiting... 

Il file SCSS viene osservata e compilato, ma sembra come se il css emesso in .tmp viene ignorato. Questo nonostante ciò che segue nel Gruntfile (predefinito).

 livereload: { 
      options: { 
       livereload: LIVERELOAD_PORT 
      }, 
      files: [ 
       '<%= yeoman.app %>/*.html', 
       '{.tmp,<%= yeoman.app %>}/styles/{,*/}*.css', 
       '{.tmp,<%= yeoman.app %>}/scripts/{,*/}*.js', 
       '<%= yeoman.app %>/images/{,*/}*.{png,jpg,jpeg,gif,webp,svg}' 
      ] 
     } 

vorrei pubblicare questo come un bug su GitHub, ma è difficile sapere quale parte dello stack è responsabile.

+0

Se trovi la tua risposta, per favore pubblica. Ho installato questo stack su una nuova macchina e scss non funziona neanche per me. –

risposta

10

provare a impostare

watch: { 
    options: { 
    nospawn: false 
    } 
} 

fatemi sapere se questo fa il trucco!

+0

Sembra aver funzionato! Secondo i documenti lo rallenta, e non mi è chiaro perché fa quello che fa, ma funziona ... –

+3

Great! Poiché 'watch.livereload.files' è legato al risultato compilato' .css' del task 'watch.compass', richiede un passo in più per vedere che il file compilato è cambiato. – Stephen

+0

Grazie! Questo ha funzionato anche per me. Ora LiveReload sta vedendo quando salvi una modifica a uno qualsiasi dei file '.scss' nel mio progetto (beh, quelli che la bussola sta guardando, comunque). – natchiketa