[尝试将我的代码推送到heroku时遇到问题。我已经跑了:
RAILS_ENV=production bundle exec rake assets:precompile
并收到此错误:
Sass::SyntaxError: Invalid CSS after " color: #f19f4d;5": expected "{", was ";"
(sass):916
我了解CSS的某处存在语法错误,但我浏览了所有文件,找不到此行。有人可以告诉我是否有办法找到这条线或可能在哪里。非常感谢!
[如果您使用的是Bootstrap,则取决于jQuery,因此您需要确保将其包含在应用程序样式表中,例如,在文件顶部的app/assets/stylesheets
中,以及在任何引导程序包含或导入之前,需要
//*= require jquery-ui
如果这不是问题,则由于某种语法错误,预编译将失败。首先,通过对代码进行全文搜索,尝试在代码中出现f19f4d
的任何内容。如果您使用的是基于* nix的系统,则可以从终端上尝试以下任一方法,
如果使用的是git版本控制
git grep f19f4d
或者只是
grep f19f4d
如果这不是罪魁祸首,那么它一定是第三方依赖项。您需要检查CSS中的所有包含内容。签入您的布局文件。您应该有类似的内容
<%= stylesheet_link_tag "application" %>
因此打开文件app/assets/stylesheets/application.scss
然后,您需要注释掉所有包含,并将它们一个接一个地添加,直到找到哪个库导致预编译失败。您将需要对每个布局和/或样式表执行此操作,直到找到导致问题的原因为止。
在每个样式表的顶部,您应该有一个包含类似项的列表
@import 'bootstrap';
或者它们可能看起来更像这样:
//*= require jquery-ui
因此要对它们进行评论以使其不加载,可以在测试时使它们像这样。
// @import 'bootstrap';
// require jquery-ui
如果您到处都有很多第三方的东西,您可能会遇到其他编译错误,但是您必须在某个地方找到该错误。