【问题标题】:Phoenix dynamic classnames Phoenix.HTMLPhoenix 动态类名 Phoenix.HTML
【发布时间】:2022-01-13 23:34:57
【问题描述】:

我想加入一个动态类名和一个静态类名。

<div class=<%="#{getClass(app.status)} two" %>

这会导致

<div class="one" two>

代替

<div class="one two">

我该如何解决这个问题?

【问题讨论】:

  • 我很确定你可以做到&lt;div class="&lt;%= getClass(app.status) %&gt; two"&gt;

标签: html elixir phoenix-framework


【解决方案1】:

如果您在 Elixir 中使用 Phoenix,可以这样:

&lt;div class={"fixed-left #{if @current_user do 'login-page' end}"}&gt;

【讨论】:

  • 谢谢。这是对我有用的答案(使用 .heex 模板)。
【解决方案2】:

您应该使用&lt;div class="&lt;%= getClass(app.status)} %&gt; two"&gt;
&lt;%= %&gt; 评估 Elixir 代码并将结果注入 HTML 的任何部分。
您可以在 HTML 标记中注入值:

<div>
  <%= @user_name %>
</div>

或任何 HTML 属性

<a class="btn <%= if(@alert, do: "btn-danger", else: "btn-primary") %>">...</a>

或者设置 HTML 属性

<button class="btn btn-success" <%= if(@disable_button, do: "disabled", else: "tooltip=\"button is working\"") %>">...</button>

【讨论】:

  • 进入 HTML 属性 = expected closing `"` for attribute value
猜你喜欢
  • 2017-03-13
  • 2017-12-22
  • 2016-02-09
  • 1970-01-01
  • 2018-04-01
  • 1970-01-01
  • 2023-03-20
  • 1970-01-01
相关资源
最近更新 更多