I currently have a function that makes an API query, returns many records.
The time it takes to load this function is on average 10 seconds.
But 5 seconds waiting for the screen to load, and very bad at the user level.
What do recommend me to do?
Do you have any examples?
Function
defp apply_action(socket, :index, _params, _url) do
case myfunction() do
{:ok, myfunction} ->
paginate_list =
Scrivener.Paginater.List.paginate(myfunction, %Scrivener.Config{page_number: 1, page_size: 10})
socket
|> assign(:page_title, "Page 1")
|> assign(:table, paginate_list)
|> assign(:table_data, paginate_list)
|> assign(:table_count, Enum.count(myfunction))
{:error, failed} ->
socket
|> assign(:table, %{})
|> assign(:table_count, 0)
|> put_flash(:error, "#{failed}")
end
end