繁体   English   中英

如何在我的 Elixir Phoenix LiveView 应用程序 header 中混合实时和“死”内容?

[英]How do I mix live and "dead" content in my Elixir Phoenix LiveView app header?

我将 root.html.heex 文件更改为如下所示:

<!DOCTYPE html>
<html lang="en">
  <head>
    ...
  </head>
  <body>
    <%= @inner_content %>
  </body>
</html>

并将<header>元素移动到app.html.heex中:

<header>
  <section class="container w-full m-5 p-3 bg-blue-200 text-blue-600 text-5xl font-bold">
    <div class="text-2xl">
      <a href="/">
        <img class="float-left mt-1"
          src={Routes.static_path(@conn, "/images/logo.png")} alt="LOGO"/>
        <span class="flex text-4xl hover:text-blue-800">
          <span class="font-medium nomargin">WEBSITE</span>
        </span>
      </a>
      <span class="float-right flex -mt-8 font-normal">
        <nav role="navigation">
          <%= render "_user_menu.html", assigns %>
        </nav>
      </span>
    </div>
  </section>
</header>
<main class="container">
  <p class="alert alert-info" role="alert"><%= get_flash(@conn, :info) %></p>
  <p class="alert alert-danger" role="alert"><%= get_flash(@conn, :error) %></p>
  <%= @inner_content %>
</main>

...并在live.html.heex中。

但我无法在live.html.heex中呈现“_user_menu.html”,因为(当然)它使用@current_user

有没有什么技巧可以让我以某种方式在 header 的浮动左侧显示实时内容,在浮动右侧显示“_user_menu.html”片段?

通常,如果您需要混合“Live”和“Dead”视图/模板,这里有live_render/3 文档 去过那里,看到那个[工作];-)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM