Component1 calls handle_event on Component2, but no render happens

I found the answer to how to communicate between two components in another ElixirForum post. See the explanation provided by @sfusato in this post.

Here is the final solution in my code:
ComponentDayView receives a handle_event when the user clicks on the calendar box to view that day’s details. It then sends an update to the ComponentViewController to display that day:

ComponentDayView...

def handle_event("day-view", %{"date" => date}, socket) do

    # forward to ComponentViewController for handling
    send_update(ComponentViewController,
        id: socket.assigns.view_controller_id,
        update: :show_day_view,
        date: date)
    {:noreply, socket}
  end

ComponentViewController receives this using a second implementation of update that uses pattern matching to just update this new assign. This “update” function simply calls another function that does all of the logic to set up the day view and then render is automatically called:

ComponentViewController ...
@impl true
  def update(%{update: :show_day_view, date: date}, socket) do
    {:ok, update_day_view(socket, date)}
  end

Works beautifully. Thank you @sfusato for your answer in that other post!!!