I was running into a similar issue. I ended up pushing an event after creating a new message then clearing the field when I receive the event in the frontent.
in form_component.ex
case Chats.create_message(message_params) do
{:ok, _message} ->
{:noreply,
socket
|> push_event("clear-textarea", %{id: "message_content"})
|> push_patch(to: socket.assigns.patch)}
in app.js
window.addEventListener(`phx:clear-textarea`, (e) => {
let el = document.getElementById(e.detail.id)
el.value = ""
})


















