我正在构建一个使用 zurb-foundation 样式表的 Rails 引擎,并且不断遇到相同的 Sass::Syntax 错误。这看起来很奇怪,因为我在 Rails 应用程序中遵循了相同的过程,并且在第一次尝试时就成功了。所以我决定通过启动两个新的 Rails 项目(一个应用程序和一个引擎)来解决这个问题,并将它们配置为使用基础设置最少。
我从 2 个干净的 Rails 3.2.9 项目开始——一个应用程序和一个应用程序,并通过在 CSS 清单中engine --full
添加 Foundation_and_overrides.scss 和 -ing 来手动为基础配置它们。require
然后我创建了一个简单的控制器,这样我就有了一个要加载的页面。对于应用程序,加载该页面并查看页面源代码,我可以看到基础 CSS 已正确编译并加载。
当我为引擎尝试同样的事情时,我得到了这个错误:
Sass::SyntaxError in Main#index
Showing /<PLUGIN_PATH>/test/dummy/app/views/layouts/application.html.erb where line #5 raised:
File to import not found or unreadable: foundation/common/ratios.
Load path: /<PLUGIN_PATH>/test/dummy
(in /<PLUGIN_PATH>/app/assets/stylesheets/example_plugin/foundation_and_overrides.scss)
(请注意,虚拟应用程序的 CSS 清单是require
-ing 插件的 CSS 清单,即require
-ingfoundation_and_overrides.scss。接线显然不是问题,因为错误是从foundation_and_overrides.scss 引发的)
我尝试了几个 Ruby-1.9.3 版本(我认为是 p125、194、p327),结果相同。
当我将此行添加到 test/dummy/config/application.rb 时,它仍然不起作用:
config.assets.paths << "#{Foundation::Engine.root}/scss"
即使foundation/common/_ratios.scss 存在于该路径中。
问题可能出在 Sass、Sprockets、Compass、Foundation 或 Rails,所以我不知道从哪里开始。
我将其报告为Foundation 的一个问题,但我对此不太相信。
有没有人见过这个?