I have a component with a textarea input.
I noticed that if the text area has new lines in the start or end of its content and the component is re-rendered, it will remove these new lines.
When looking into the form structure, I noticed these fields:
%Phoenix.HTML.Form{
source: #AshPhoenix.Form<
...
params: %{"male_content" => "\n\nline\n\n"},
source: #Ash.Changeset<
attributes: %{
...
male_content: "line",
...
},
>,
...
params: %{"male_content" => "\n\nline\n\n"},
...
}
As you can see, the params field, both for Phoenix.HTML.Form and AshPhoenix.Form has the new lines correctly, but the Ash.Changeset doesn’t.
I’m guessing that when the re-render happens, the form will replace the textarea content with what is in the Ash.Changeset and remove the new lines.


















