Rails Engine-找不到导入文件或不可读:font-awesome

E L*_*yle 5 ruby-on-rails rails-engines font-awesome

我做了一个超级简单的Rails应用程序,并且使用字体很棒,没有问题。将其扩展为在Rails引擎中执行相同的步骤会产生以下错误。

File to import not found or unreadable: font-awesome
Run Code Online (Sandbox Code Playgroud)

我找不到解决方案。如果有人对如何使这种简单的Rails引擎与Font-awesome兼容,我将不胜感激。

生成Rails引擎和设置字体真棒的步骤...

用一个模型类创建基本引擎以进行测试

rails plugin new testeng --full --mountable 
cd testeng
bundle install
rails g scaffold book title:string desc:string
rake db:migrate
Run Code Online (Sandbox Code Playgroud)

添加字体真棒

编辑testeng.gemspec并在包含rails gem之后添加sass-rails和font-awesome gem

  s.add_dependency 'sass-rails', '~> 4.0.3'
  s.add_dependency 'font-awesome-rails'
Run Code Online (Sandbox Code Playgroud)

将application.css重命名为application.css.scss

cd app/assets/stylesheets/testeng/
mv application.css application.css.scss
Run Code Online (Sandbox Code Playgroud)

编辑app / assets / stylesheets / testeng / application.css.scss并在文件末尾附加导入语句。

@import 'font-awesome';
Run Code Online (Sandbox Code Playgroud)

编辑app / views / testeng / books / index.html.erb并使用一些字体超赞的图标

<h1>Listing books</h1>

<%= link_to content_tag(:i, '', :class => "fa fa-plus-circle"), new_book_path  %>
Run Code Online (Sandbox Code Playgroud)

启动Rails服务器

cd <root-app-path>
bundle install
cd test/dummy
bundle install
rails s
Run Code Online (Sandbox Code Playgroud)

在浏览器中测试

http:// localhost:3000 / testeng / books

得到错误

File to import not found or unreadable: font-awesome
Run Code Online (Sandbox Code Playgroud)

her*_*iti 3

安装 font-awesome-sass 代替:

gem 'font-awesome-sass', '~> 4.4.0'
Run Code Online (Sandbox Code Playgroud)

捆绑它:

bundle install
Run Code Online (Sandbox Code Playgroud)

将以下内容添加到您的 application.css.scss (app/assets/stylesheets):

@import "font-awesome-sprockets";
@import "font-awesome";
Run Code Online (Sandbox Code Playgroud)

作为测试,您可以将以下行添加到视图中以查看其是否有效:

<%= icon('thumbs-up', 'It Worked!!!', id: 'my-icon', class: 'fa-5x') %>
Run Code Online (Sandbox Code Playgroud)