如何调试Rails 5中编译的资产?
使用Chrome,我不会得到非常有用的错误信息。如果我从命令行运行rake assets:precompile,它也会失败,对我的帮助也不够。
我在从Rails 4.2升级到5的过程中遇到的问题。在application.css.scss中,我有@import "nifty"。nifty.scss与用于漂亮主题的其他SCSS文件一起存在于供应商/资产/样式表/ nifty中。nifty.scss的主旨是:
@import "_variables";
@import "_layout";
@import "_animations";
@import "_mainnav";当Rails试图编译资产时,使用带有错误Undefined variable: "$enable-animation"的@import Undefined variable: "$enable-animation"失败。不过,这个变量是在_variables;中定义的。尽管我不需要这样做,但我还是在_animations的顶部添加了_animations。这修复了这个错误,但是其他非常类似的错误会出现更多的错误,直到我几乎@将每个scss文件中的每个scss导入。
我认为问题不在于SASS文件中的变量,而在于其他地方的问题。我尝试过将byebug作为断点放在其他地方,但似乎找不到问题。
还有其他方法来调试资产管道和资产编译吗?
发布于 2017-02-18 08:29:31
我不确定我能不能帮上忙。
调试链轮
您可以尝试调试资产管道中涉及的 Asset 或GEM。RVM是一个隐藏的文件夹,您的宝石(取决于您使用的Ruby版本)可能在下面的路径中。
.rvm/gems/ruby-2.3.3@myapp/gems/在里面,我找到了链轮-rails-3.2.0,您可以使用高级编辑器打开几个.rb文件,并且可以在代码中设置一个断点,例如binding.pry。有关撬调试器的详细信息,请查看pry。
我希望你的其他问题会出现在我的脑海中.
https://stackoverflow.com/questions/42308312
复制相似问题