From 1d8d13d766b6467188cbded28d103ffb13421c77 Mon Sep 17 00:00:00 2001 From: Eileen Noonan Date: Fri, 22 Mar 2024 15:26:14 -0400 Subject: =?UTF-8?q?=F0=9F=94=80=20Write=20a=20readme=20for=20example=2004-?= =?UTF-8?q?custom-event-handlers.=20(#72)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * readme for example 04 * Update README.md tweaks --- examples/04-custom-event-handlers/src/app.gleam | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'examples/04-custom-event-handlers/src/app.gleam') diff --git a/examples/04-custom-event-handlers/src/app.gleam b/examples/04-custom-event-handlers/src/app.gleam index 35a6831..aa9638c 100644 --- a/examples/04-custom-event-handlers/src/app.gleam +++ b/examples/04-custom-event-handlers/src/app.gleam @@ -60,16 +60,13 @@ fn view(model: Model) -> Element(Msg) { let styles = [#("width", "100vw"), #("height", "100vh"), #("padding", "1rem")] let length = int.to_string(model.length) let max = int.to_string(model.max) - let on_input = fn(event) { + let make_it_loud = fn(event) -> Result(Msg, List(dynamic.DecodeError)) { use target <- result.try(dynamic.field("target", dynamic.dynamic)(event)) use value <- result.try(dynamic.field("value", dynamic.string)(target)) - // Decoding the `value` from anevent target is so common we provider a decoder - // for it already: - // - // use value <- result.try(event.value(event)) + let loud = string.uppercase(value) - Ok(GotInput(value)) + Ok(GotInput(loud)) } ui.centre( @@ -78,8 +75,8 @@ fn view(model: Model) -> Element(Msg) { [aside.content_first(), aside.align_centre()], ui.field( [], - [element.text("Write a message:")], - ui.input([attribute.value(model.value), event.on("input", on_input)]), + [element.text("Write a LOUD message:")], + ui.input([attribute.value(model.value), event.on("input", make_it_loud)]), [element.text(length <> "/" <> max)], ), ui.button([event.on_click(Reset)], [element.text("Reset")]), -- cgit v1.2.3