Yeoman:在更改SCSS文件时触发LiveReload

Pau*_*eon 5 sass yeoman livereload compass-sass

我已经得到了最新的自耕农堆栈,我刚刚升级发电机的webapp掌握按:https://github.com/yeoman/generator-webapp/pull/67获得livereload正常工作.

HTML文件和css文件似乎正常使用livereload,但scss文件不会触发重新加载.这是一个输出片段:

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...
Run Code Online (Sandbox Code Playgroud)

正在监视和编译scss文件,但看起来好像忽略了.tmp中输出的css.尽管在(默认)Gruntfile中有以下内容.

        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}'
            ]
        }
Run Code Online (Sandbox Code Playgroud)

我会将此作为bug发布在github上,但很难知道堆栈的哪个部分负责.

Ste*_*hen 10

尝试设置

watch: {
  options: {
    nospawn: false
  }
}
Run Code Online (Sandbox Code Playgroud)

如果这样做,请告诉我!

  • 大!由于`watch.livereload.files`绑定到`watch.compass`任务的`.css`编译结果,因此需要一个额外的步骤来查看编译文件是否已更改. (3认同)