Struct dioxus_core::prelude::EventHandler
source · [−]pub struct EventHandler<'bump, T = ()> {
pub callback: RefCell<Option<BumpBox<'bump, dyn FnMut(T) + 'bump>>>,
}
Expand description
The callback type generated by the rsx!
macro when an on
field is specified for components.
This makes it possible to pass move |evt| {}
style closures into components as property fields.
Example
ⓘ
rsx!{
MyComponent { onclick: move |evt| log::info!("clicked"), }
}
#[derive(Props)]
struct MyProps<'a> {
onclick: EventHandler<'a, MouseEvent>,
}
fn MyComponent(cx: Scope<'a, MyProps<'a>>) -> Element {
cx.render(rsx!{
button {
onclick: move |evt| cx.props.onclick.call(evt),
}
})
}
Fields
callback: RefCell<Option<BumpBox<'bump, dyn FnMut(T) + 'bump>>>