如何将 %a 标签转换为 link_to
How to convert %a tag to link_to
我有一个 Rails 应用程序,它有一个简单的通知系统。许多人都是这个项目的一部分,遗憾的是我们没有遵守标准的编码约定。在某些情况下会发生一些奇怪的问题,我发现这些问题的发生是因为它们与使用 %a
而不是 link_to
相关联。
然后我开始了将每个 %a
更改为 link_to
的旅程并且已经转换了简单的东西然后这让我感到困惑:
.dropdown{"data-behavior" => "notifications"}
%a.dropdown-toggle.nav-link{"aria-expanded" => "false", "aria-haspopup" => "true", "data-behavior" => "notifications-link", "data-toggle" => "dropdown", :type => "button"}
%i.fa.fa-bell
%span{"data-behavior" => "unread-count"}
.dropdown-menu.dropdown-menu-right{"aria-labelledby" => "dropdownMenuButton", "data-behavior" => "notification-items"}
如何将其转换为 link_to
?
当没有 href
时 - 您可以将 nil
传递到那里:
= link_to nil, class: 'dropdown-toggle nav-link',
type: :button,
aria:{ expanded: false, haspopup: true},
data: { behavior: "notifications-link", toggle: :dropdown} do
%i.fa.fa-bell
- # and so on
但对于实际上不是 link 的地方 - 将其设为 link_to
没有多大意义
= link_to nil, type: :button,
class: 'dropdown-toggle nav-link',
aria: { expanded: false, haspopup: true },
data: { behavior: 'notifications-link', toggle: 'dropdown' } do
%i.fa.fa-bell
%span{"data-behavior" => "unread-count"}
这个代码应该没问题
我有一个 Rails 应用程序,它有一个简单的通知系统。许多人都是这个项目的一部分,遗憾的是我们没有遵守标准的编码约定。在某些情况下会发生一些奇怪的问题,我发现这些问题的发生是因为它们与使用 %a
而不是 link_to
相关联。
然后我开始了将每个 %a
更改为 link_to
的旅程并且已经转换了简单的东西然后这让我感到困惑:
.dropdown{"data-behavior" => "notifications"}
%a.dropdown-toggle.nav-link{"aria-expanded" => "false", "aria-haspopup" => "true", "data-behavior" => "notifications-link", "data-toggle" => "dropdown", :type => "button"}
%i.fa.fa-bell
%span{"data-behavior" => "unread-count"}
.dropdown-menu.dropdown-menu-right{"aria-labelledby" => "dropdownMenuButton", "data-behavior" => "notification-items"}
如何将其转换为 link_to
?
当没有 href
时 - 您可以将 nil
传递到那里:
= link_to nil, class: 'dropdown-toggle nav-link',
type: :button,
aria:{ expanded: false, haspopup: true},
data: { behavior: "notifications-link", toggle: :dropdown} do
%i.fa.fa-bell
- # and so on
但对于实际上不是 link 的地方 - 将其设为 link_to
= link_to nil, type: :button,
class: 'dropdown-toggle nav-link',
aria: { expanded: false, haspopup: true },
data: { behavior: 'notifications-link', toggle: 'dropdown' } do
%i.fa.fa-bell
%span{"data-behavior" => "unread-count"}
这个代码应该没问题