css - 检测 css 文件和 ruby​​ on rails 中的语法错误。无效的 CSS

标签 css ruby-on-rails ruby

我在尝试将我的代码推送到 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 中在任何 Bootstrap 包含或导入之前,您需要

//*= 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

如果你到处都有很多第 3 方的东西,你可能会遇到其他编译错误,但你必须在某个地方找到错误。

关于css - 检测 css 文件和 ruby​​ on rails 中的语法错误。无效的 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58275778/

相关文章:

javascript - 在mousemove上平移指定范围内的div位置

javascript - 在 img 的顶部显示一个 div

ruby-on-rails - 一个模型中有多个状态机?

Ruby - GCC 的依赖文件解析优化

ruby - 为每个请求创建新的 sinatra 对象,但初始化仅调用一次

html - 如何用css在手机上实现按钮点击效果

html - 它看起来像一个按钮,但它不是输入元素。如何创建这样的元素?

javascript - 确定 rails3 jquery 自动完成插件的结果范围

ruby-on-rails - Passenger错误: libMagickCore. so.2:无法打开共享对象文件

javascript - Rails,从下拉菜单中选择不会触发不同的过滤器