首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从LiveView Phoenix更新LiveComponent

如何从LiveView Phoenix更新LiveComponent
EN

Stack Overflow用户
提问于 2020-06-20 21:16:47
回答 1查看 715关注 0票数 0

我有一辆LV as..

page_live.ex

代码语言:javascript
复制
defmodule EverdeployWeb.PageLive do
  use EverdeployWeb, :live_view

  def mount(_params, session, socket) do
    if connected?(socket), do: send(self(), :add_branches)
    {:ok, assign(socket, current_user: session["current_user"], evercam_server_branches: [], loading: true)}
  end

  def handle_info(:add_branches, socket) do
    {:noreply, assign(socket, evercam_server_branches: Github.branches("evercam-server2"), loading: false)}
  end
end

在html.leex中,我有

代码语言:javascript
复制
<section id="cd-timeline" class="cd-container">
  <%= if @loading, do: "loading", else: "" %> 
  <%= for branch <- @evercam_server_branches do %>
    <%= live_component @socket, Server, id: branch.sha, branch: branch %>
  <% end %>
</section>

Server LiveComponent中,我有

代码语言:javascript
复制
<div class="cd-timeline-block">
  <div class="cd-timeline-img cd-picture">
    loading
  </div>

  <div class="cd-timeline-content">
    <h2><%= @branch.branch_name %></h2>
    <p>loading</p>
    <a href="#0" class="cd-read-more">Deploy</a>
    <span class="cd-date">loading</span>
  </div>
</div>

由于LV将挂载并将evercam_server_branches发送到:live_view,因此我仅显示branch_name,其他值将来自另一种方法。

这基本上就是Github.branch(repo, branch),但我不确定在哪里调用这个方法,并更新Server上正在加载的所有值,我将把它们更新为从branch/2方法返回的值。

就像在:live_view加载时启动。我只想显示一个带有分支机构名称和加载图标的屏幕,然后在获得branch/2值后更新服务器。

我正在寻找方法,我如何在这里调用一些东西

代码语言:javascript
复制
defmodule Server do
  use Phoenix.LiveComponent

end

并更新Server值?

EN

回答 1

Stack Overflow用户

发布于 2020-06-24 16:07:00

你可以在mount中调用带有定时器的update函数,检查:

https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html#connected?/1-examples

接下来,您需要通过send_update/2 https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html#send_update/2更新每个组件

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62486298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档