在ruby on rails中将元素类拆分为两个类html.slim



此处没有:我有身份验证方法图标,我想单独设置样式,但它们属于同一个类,我不知道如何重写它,使其使用fb和谷歌的两个不同图标。

HTML SLIM代码:

- if devise_mapping.omniauthable?
.row
.col-sm-12
p.text-center.small-link= t('html.text.or_oauth_login')
.col-sm-12.d-flex.justify-content-center.oauth-box
- resource_class.omniauth_providers.each do |provider|
a.tooltiptext.left[style="position:absolute; left: -10px; top: 43px; color: #FFFFFF;"]= t('html.links.tooltiptext')
= link_to image_tag("#{provider}_logo.png", size: "40x40"), omniauth_authorize_path(resource_name, provider), class: "oauth-icon"

因此,唯一的类是"oauthicon"。我认为它需要#{provider}从devise.rb

config.omniauth :facebook, "xxxxxxxx", 
config.omniauth :google_oauth2, "xxxxxxxxxxx", "xxxxxxxxxx" {}

应该如何重写为具有两个类?

您可以添加另一个动态创建的类,如:class: "oauth-icon #{provider}-icon",这将保留oauth-icon类(我认为这是必要的(,然后根据提供程序添加facebook-icon类或google_oauth2-icon类。

最新更新