ruby-on-rails – Rails:使用资产管道的livereload

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails:使用资产管道的livereload前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
铁路专家的快速问题

当使用Rails 3.0.x应用程序时,我是Guard和LiveReload的重用户.然而,似乎在Rails 3.1中使用资产管道时,livereload guard不知道对Sass文件的更改会触发向浏览器发送新的CSS.

有人使用LiveReload与资产管道?如果是这样,你怎么让它工作?

谢谢!

解决方法

在Github上关注了一些问题之后,我发现以下内容修复了我的问题:

1)确保所有scss文件按照新的资产约定命名,如:filename.css.scss

我在Rails 3.1之前使用scss,并刚刚命名了我所有的sass文件filename.scss.

2)在保护文件中使用以下命令进行生效:

guard 'livereload' do
  watch(%r{app/helpers/.+\.rb})
  watch(%r{app/views/.+\.(erb|haml)})
  watch(%r{(public/).+\.(css|js|html)})
  watch(%r{app/assets/stylesheets/(.+\.css).*$})    { |m| "assets/#{m[1]}" }
  watch(%r{app/assets/javascripts/(.+\.js).*$}) { |m| "assets/#{m[1]}" }
  watch(%r{lib/assets/stylesheets/(.+\.css).*$})    { |m| "assets/#{m[1]}" }
  watch(%r{lib/assets/javascripts/(.+\.js).*$}) { |m| "assets/#{m[1]}" }
  watch(%r{vendor/assets/stylesheets/(.+\.css).*$}) { |m| "assets/#{m[1]}" }
  watch(%r{vendor/assets/javascripts/(.+\.js).*$})  { |m| "assets/#{m[1]}" }
  watch(%r{config/locales/.+\.yml})
end
原文链接:https://www.f2er.com/ruby/274007.html

猜你在找的Ruby相关文章