Fix: Ensure members are loaded in handle_params when signature unchanged
This commit is contained in:
parent
8f7f0de822
commit
36edee6fcc
1 changed files with 4 additions and 3 deletions
|
|
@ -581,14 +581,15 @@ defmodule MvWeb.MemberLive.Index do
|
||||||
next_sig = build_signature(socket)
|
next_sig = build_signature(socket)
|
||||||
|
|
||||||
# Only load members if signature changed (optimization: avoid duplicate loads)
|
# Only load members if signature changed (optimization: avoid duplicate loads)
|
||||||
|
# OR if members haven't been loaded yet (first handle_params call after mount)
|
||||||
socket =
|
socket =
|
||||||
if prev_sig == next_sig do
|
if prev_sig == next_sig && Map.has_key?(socket.assigns, :members) do
|
||||||
# Nothing changed, skip expensive load_members() call
|
# Nothing changed AND members already loaded, skip expensive load_members() call
|
||||||
socket
|
socket
|
||||||
|> prepare_dynamic_cols()
|
|> prepare_dynamic_cols()
|
||||||
|> update_selection_assigns()
|
|> update_selection_assigns()
|
||||||
else
|
else
|
||||||
# Signature changed, reload members
|
# Signature changed OR members not loaded yet, reload members
|
||||||
socket
|
socket
|
||||||
|> load_members()
|
|> load_members()
|
||||||
|> prepare_dynamic_cols()
|
|> prepare_dynamic_cols()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue