我已经安装了rvm和bourbon。然后将bourbon安装到我的/css目录中。但是当我尝试使用
@import 'bourbon/bourbon';
我收到了这个错误信息:
。
Sass::SyntaxError: File to import not found or unreadable: bourbon/bourbon.
我查看了其他与此问题相同的线程,但似乎都没有解决我的问题。如何让这个错误消失并使bourbon正确导入?
试试这个:
在你的Gemfile文件中:
gem 'bourbon'
接着运行:
bundle install
来自Bourbon
的Github文档
非Rails项目
Bourbon包含一种简单的方法来生成一个带有所有必要文件的目录。 命令行帮助:$ bourbon help 或访问Command line tools wiki 安装(Bourbon v3.0+)
gem install bourbon
bourbon install
bourbon install --path my/custom/path/
导入
最后,在样式表的开头导入混合器:
@import 'bourbon/bourbon';
Note: Bourbon no longer requires a custom sass --watch command for Bourbon v3.0+
需要注意的是,安装bourbon的位置很重要(假设您正在本地计算机上工作)。在安装时,您可以像这样确定自定义安装:
bourbon install --path my/custom/path/
把它放在通常保存本地网页文件的目录中会是个好主意,这样可以更方便地访问。我目前将其安装在用户目录中,有点麻烦,但我必须在我的Sass文件中这样调用我的波旁酒:
@import '/Users/myusername/rubygems/bourbon/_bourbon.scss';
是的,这确实有点晚了,我也遇到了同样的问题使用Rails 4.2.5.1。我认为在你的情况下,问题是你没有将资产管道(CSS文件)重命名为扩展名.scss
。
以下是我的解决方法:
如何在Ruby on Rails 4.2+中解决Bourbon问题
将 Bourbon 添加到您的 Gemfile 中:
gem 'bourbon'
然后运行:
bundle install
注意:如果您的样式表仍然命名为 application.css
,则需要将其重命名为 application.scss
。
在我的情况下,我的管道被命名为 application.css.scss
,因为我仍然将扩展名附加到 .scss
扩展名上,所以它可以工作。
删除 application.scss 中的所有 Sprockets 指令(require、require_tree 和 require_self),并改用 Sass 的本机 @import。原因如 此处 所解释的那样。这样,您的 application.scss
将像下面这样在开头导入 Bourbon:
示例:
@import "bourbon";
@import "bourbon";
@import "bootstrap-sprockets";
@import "bootstrap";
@import "social-share-button";
然后通过运行
rails server
重新启动服务器。
有了这些,您应该可以开始运行了。如需更多信息,请参见https://github.com/thoughtbot/bourbon
我在升级Rails版本(3.2 -> 5.0)时遇到了这个问题。在这个过程中,我在Gemfile中留下了group :assets
。将bourbon
和其他宝石从该组中移除解决了这个问题。
试试这个 (如果你使用Rails的话):
Gemfile
文件gem bourbon
存在,但不在任何分组中bundle install
这是我一个同事升级Rails版本时遇到的问题(3.2 -> 5.0):他意外地将一些宝石留在了被Rails 4弃用的:assets
分组中。