fn main() { rsx! { div {{ let millis = timer.with(|t| t.duration().saturating_sub(t.started_at.map(|x| x.elapsed()).unwrap_or(Duration::ZERO)).as_millis()); format!("{:02}:{:02}:{:02}.{:01}", millis / 1000 / 3600 % 3600, millis / 1000 / 60 % 60, millis / 1000 % 60, millis / 100 % 10) }} div { input { r#type: "number", min: 0, max: 99, value: format!("{:02}",timer.read().hours), oninput: move |e| { timer.write().hours = e.value().parse().unwrap_or(0); } } // some comment input { r#type: "number", min: 0, max: 99, value: format!("{:02}",timer.read().hours), oninput: move |e| { timer.write().hours = e.value().parse().unwrap_or(0); } } } } }