use leptos::*; use leptos_use::docs::demo_or_body; use leptos_use::use_interval_fn; use leptos_use::utils::Pausable; #[component] fn Demo() -> impl IntoView { let greetings = [ "Hello", "Hi", "Yo!", "Hey", "Hola", "こんにちは", "Bonjour", "Salut!", "你好", "Привет", ]; let (word, set_word) = create_signal(greetings[0]); let (interval, set_interval) = create_signal(500_u64); let (index, set_index) = create_signal(0); let Pausable { pause, resume, is_active, } = use_interval_fn( move || { set_index.set((index.get() + 1) % greetings.len()); set_word.set(greetings[index.get()]); }, interval, ); view! {

{move || word.get()}

"Interval:"

"Resume" } } > { let pause = pause.clone(); view! { } } } } fn main() { _ = console_log::init_with_level(log::Level::Debug); console_error_panic_hook::set_once(); mount_to(demo_or_body(), || { view! { } }) }