Um dos maiores avanços no framework de desenvolvimento Web, Ruby On Rails, foi a inclusão oficial de um gerenciador de assets, neste caso, o Yarn. Agora é possível se livrar, de uma forma mais prática, de uma infinidade de GEMs que estavam ali no Gemfile apenas para esse fim.
No entanto, algumas ferramentas, como o famoso Font Awesome, que necessita de fonts são um complicador quando postos no ambiente de Produção, após o assets-precompile e o digest estarem em prática. O que acontece, o font-awesome não funciona.
Então, vamos solucionar este problema de uma forma símples:
Passo 1: Adicione normalmente o font-awesome com o yarn
yarn add font-awesome
Passo 2: Assegure-se que caminho está declarado no config/initializers/assets.rb
Procure algo assim: Rails.application.config.assets.paths << Rails.root.join('node_modules'), isso é adicionado por padrão no Rails 5, mas se você fez de forma personalizada, pode está assim: Rails.application.config.assets.paths << Rails.root.join('vendor/assets').
Passo 3: No sugar de simplesmente importar o font-awesome em app/assets/stylesheets/application.scss desta forma: *= require font-awesome/scss/font-awesome. Crie o seguinte arquivo, pode ser app/assets/stylesheets/font-awesome-overwrite.scss
Por fim, importe o em app/assets/stylesheets/application.scss desta forma: *= require font-awesome-overwrite
Pronto, agora seu projeto funcionará com o font-awesome tanto em Desenvolvimento quanto em Produção.
No entanto, algumas ferramentas, como o famoso Font Awesome, que necessita de fonts são um complicador quando postos no ambiente de Produção, após o assets-precompile e o digest estarem em prática. O que acontece, o font-awesome não funciona.
Então, vamos solucionar este problema de uma forma símples:
Passo 1: Adicione normalmente o font-awesome com o yarn
yarn add font-awesome
Passo 2: Assegure-se que caminho está declarado no config/initializers/assets.rb
Procure algo assim: Rails.application.config.assets.paths << Rails.root.join('node_modules'), isso é adicionado por padrão no Rails 5, mas se você fez de forma personalizada, pode está assim: Rails.application.config.assets.paths << Rails.root.join('vendor/assets').
Passo 3: No sugar de simplesmente importar o font-awesome em app/assets/stylesheets/application.scss desta forma: *= require font-awesome/scss/font-awesome. Crie o seguinte arquivo, pode ser app/assets/stylesheets/font-awesome-overwrite.scss
Por fim, importe o em app/assets/stylesheets/application.scss desta forma: *= require font-awesome-overwrite
Pronto, agora seu projeto funcionará com o font-awesome tanto em Desenvolvimento quanto em Produção.
Ruby on Rails + Yarn + Font Awesome em Produção, solução final.
Reviewed by AJ Alves
on
quarta-feira, junho 27, 2018
Rating:
Nenhum comentário:
Postar um comentário