在Rails中使用link_to而不是锚标记是否有优势?

sup*_*ken 5 html5 ruby-on-rails

这两个人做同样的事吗?

<%= link_to "Example", '#', class: "somestyle" %>

<a href="#" class= "somestyle"> Example </a>

如果我正在编写一个静态的.html.erb页面,如果其他所有内容都是用HTML标记编写的,那么对于链接使用HTML标记也没有意义吗?我不确定为什么要使用帮手.同样,用于链接样式表,javascripts等.

Bil*_*ner 5

对于链接标签,走哪条路可能没有区别。除非您链接到多个“#”。例如,使用路由路径。

对于样式表和 javascript,如果您正在利用资产管道,我认为您将需要继续使用 Rails 助手。如果是这样,文件名中的散列在每次资产编译时都会发生变化(我相信),并且每次手动尝试编辑文件名可能会变得很痛苦。

  • 是的,您可以只执行 `&lt;a href="/whatever"&gt;`,但是,例如,如果您稍后决定将登录路径从 `/login` 更改为 `/log_in`,该怎么办。如果这样做,您需要浏览所有这些页面以调整 URL。如果你使用了一个 `link_to` 和一个路由,那么你就不需要改变任何东西。`link_to "Log in"、login_path 等...` 仍然可以正常工作,因为您只调整了路由文件。 (6认同)