sassc-rails 资产更改未被编译
sassc-rails assets changes not being compiled
我正在尝试从 sass-rails
转换为 sassc-rails
。我正在使用 rails 4.2.2
.
当我使用 sassc-rails 时,对我的 scss 文件所做的更改不会反映在视图中,即使我停止并重新启动服务器(我已关闭 spring
)。如果我停止服务器并执行 rm -r tmp/cache/assets
,则会反映更改。
如果我返回 sass-rails
它可以正常工作,但我必须在重新启动服务器之前执行 rm -r tmp/cache/assets
才能使其正常工作。
我该如何解决这个问题?
您需要在应用的 lib/sassc/rails/ 中创建一个名为 importer.rb 的配置文件。
你需要做这样的事情。
class CSSExtension
def postfix
".css"
end
def import_for(original_path, parent_path, full_path)
import_path = full_path.gsub(/\.css$/,"")
SassC::Importer::Import.new(import_path)
end
end
已通过删除 application.css 文件中的所有文件后缀解决此问题。例如
@import 'pages.css.scss'
@import 'morris.css'
到
@import 'pages'
@import 'morris'
已在 sassc-rails thanks to boffbowsh and bolandrm
解决
请注意,此问题似乎还有其他原因,因此另一种方法是 turn off asset caching。
我正在尝试从 sass-rails
转换为 sassc-rails
。我正在使用 rails 4.2.2
.
当我使用 sassc-rails 时,对我的 scss 文件所做的更改不会反映在视图中,即使我停止并重新启动服务器(我已关闭 spring
)。如果我停止服务器并执行 rm -r tmp/cache/assets
,则会反映更改。
如果我返回 sass-rails
它可以正常工作,但我必须在重新启动服务器之前执行 rm -r tmp/cache/assets
才能使其正常工作。
我该如何解决这个问题?
您需要在应用的 lib/sassc/rails/ 中创建一个名为 importer.rb 的配置文件。
你需要做这样的事情。
class CSSExtension
def postfix
".css"
end
def import_for(original_path, parent_path, full_path)
import_path = full_path.gsub(/\.css$/,"")
SassC::Importer::Import.new(import_path)
end
end
已通过删除 application.css 文件中的所有文件后缀解决此问题。例如
@import 'pages.css.scss'
@import 'morris.css'
到
@import 'pages'
@import 'morris'
已在 sassc-rails thanks to boffbowsh and bolandrm
解决请注意,此问题似乎还有其他原因,因此另一种方法是 turn off asset caching。