leptos-use/examples/use_element_hover/src/main.rs

31 lines
755 B
Rust
Raw Normal View History

2023-07-03 16:10:58 +01:00
use leptos::html::Button;
2023-06-17 04:05:51 +01:00
use leptos::*;
use leptos_use::docs::demo_or_body;
use leptos_use::{use_element_hover_with_options, UseElementHoverOptions};
#[component]
fn Demo(cx: Scope) -> impl IntoView {
2023-07-03 16:10:58 +01:00
let el = create_node_ref::<Button>(cx);
2023-06-17 04:05:51 +01:00
let is_hovered = use_element_hover_with_options(
cx,
el,
UseElementHoverOptions::default()
.delay_enter(200)
.delay_leave(600),
);
view! { cx,
<button node_ref=el>{ move || if is_hovered.get() { "Thank you!" } else { "Hover me" } }</button>
2023-06-17 04:05:51 +01:00
}
}
fn main() {
_ = console_log::init_with_level(log::Level::Debug);
console_error_panic_hook::set_once();
mount_to(demo_or_body(), |cx| {
view! { cx, <Demo /> }
})
}