【问题标题】:Using content_tag vs writing pure HTML使用 content_tag 与编写纯 HTML
【发布时间】:2019-05-04 22:42:51
【问题描述】:

我正在学习 Phoenix(和 Elixir),在阅读了一些文档后,我注意到 HTML 在模板中的呈现方式之间存在一些冲突。而且我不知道哪种方法更好用。

以凤凰docs中的代码示例为例:

<%= for key <- connection_keys(@conn) do %>
    <p><%= key %></p>
<% end %>

上面的代码在一个新段落中打印每个连接键。为什么不这样做呢? :

<%= for key <- connection_keys(@conn) do
        content_tag :p, key
    end %>

使用其中一个有什么缺点吗?我应该主要用 Elixir 编写模板,还是主要是 HTML,或者两者兼而有之(行业标准是什么?)?我还发现第二个代码 sn-p 更具可读性。

我已经意识到使用 content_tag 可以在 Elixir 代码中编写几乎整个页面,而无需编写任何 HTML。

【问题讨论】:

    标签: elixir phoenix


    【解决方案1】:

    凤凰是OSS。这里是Phoenix.HTML.Tag.content_tag/2的实现:

    → https://github.com/phoenixframework/phoenix_html/blob/v2.13.2/lib/phoenix_html/tag.ex#L87

    这与html_escape&lt;%= key %&gt; 基本相同。

    也就是说,随心所欲;没有显着差异,尽管在 Phoenix 中使用 Phoenix 助手可能是有意义的。

    【讨论】:

      猜你喜欢
      • 2012-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-06
      • 2011-08-22
      • 2021-04-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多