def mount(params, _session, socket) do
В LiveView первый аргумент с именем params, к которому вы пытаетесь обратиться, используется для параметров запроса, а также для любых параметров пути к маршрутизатору, когда вы смонтировали LiveView из маршрутизатора, который не является ваш случай, так как вы вызываете его из шаблона. Вот почему вы получаете сообщение об ошибке.
Чтобы получить значение init_state, которое вы передаете в let liveSocket = new LiveSocket("/live", Socket, {params: {init_state: "value from localstorage"}..
Вам нужно вызвать get_connect_params/1
что-то в строке
def mount(_params, _session, socket) do
init_state = get_connect_params(socket)["init_state"]
IO.inspect(init_state)
end
Важно отметить, что get_connected\1
доступен только для использования внутри функции монтирования.