dioxus/packages/signals/examples/read_only_degrade.rs
Jonathan Kelley dd109f20d2
fix #1979: generated Owned impl for the props builder was using the wrong generics. (#2027)
This commit fixes the owned impl to use the original generics rather than the build generics.
2024-03-08 16:49:56 -06:00

30 lines
656 B
Rust

//! Signals can degrade into a ReadOnlySignal variant automatically
//! This is done thanks to a conversion by the #[component] macro
use dioxus::prelude::*;
fn main() {
launch(app);
}
fn app() -> Element {
let mut count = use_signal(|| 0);
rsx! {
h1 { "High-Five counter: {count}" }
button { onclick: move |_| count += 1, "Up high!" }
button { onclick: move |_| count -= 1, "Down low!" }
Child {
count,
"hiiii"
}
}
}
#[component]
fn Child(count: ReadOnlySignal<i32>, children: Element) -> Element {
rsx! {
div { "Count: {count}" }
{children}
}
}