dkuku
1
Currently we have to write this way which is a bit convoluted
socket =
socket
|> assign(valid: true)
{:noreply, socket}
Please include functions to write like for the most popular values just two for :ok
and :noreply
make my file look much cleaner
socket
|> assign(valid: true)
|> noreply()
I can add it myself as helpers but would be nice to have it included in the framework
rkma
2
You could do this:
{:noreply, assign(socket, :valid, true)}
1 Like
dkuku
3
I know but I just refactored this:
def handle_event("validate", %{"command" => command} = params, socket) do
socket =
socket
|> assign(valid: valid_code?(command, socket.assigns.binding))
{:noreply, push_patch(socket, to: self_path(socket, socket.assigns.menu.node, params))}
end
@impl true
def handle_info({:node_redirect, node}, socket) do
{:noreply, push_redirect(socket, to: self_path(socket, node, socket.assigns.params))}
end
To
@impl true
def handle_event("validate", %{"command" => command} = params, socket) do
socket
|> assign(valid: valid_code?(command, socket.assigns.binding))
|> push_patch(to: self_path(socket, socket.assigns.menu.node, params))
|> noreply()
end
def handle_info({:node_redirect, node}, socket) do
socket
|> push_redirect(to: self_path(socket, node, socket.assigns.params))
|> noreply()
end
Its much more readable. I was even thinking to create a library for that, but I it would be good to have it inside phoenix
def noreply(socket), do: {:noreply, socket}
1 Like