pub struct Event<T>where
T: 'static + ?Sized,{
pub data: Rc<T>,
/* private fields */
}
Expand description
A wrapper around some generic data that handles the event’s state
Prevent this event from continuing to bubble up the tree to parent elements.
§Example
rsx! {
button {
onclick: move |evt: Event<MouseData>| {
evt.stop_propagation();
}
}
};
Fields§
§data: Rc<T>
The data associated with this event
Implementations§
§impl<T> Event<T>where
T: ?Sized,
impl<T> Event<T>where
T: ?Sized,
pub fn map<U, F>(&self, f: F) -> Event<U>
pub fn map<U, F>(&self, f: F) -> Event<U>
Map the event data to a new type
§Example
rsx! {
button {
onclick: move |evt: MouseEvent| {
let data = evt.map(|data| data.client_coordinates());
println!("{:?}", data.data());
}
}
};
pub fn cancel_bubble(&self)
👎Deprecated: use stop_propagation instead
pub fn cancel_bubble(&self)
Prevent this event from continuing to bubble up the tree to parent elements.
§Example
rsx! {
button {
onclick: move |evt: Event<MouseData>| {
evt.cancel_bubble();
}
}
};
pub fn propagates(&self) -> bool
pub fn propagates(&self) -> bool
Check if the event propagates up the tree to parent elements
pub fn stop_propagation(&self)
pub fn stop_propagation(&self)
Prevent this event from continuing to bubble up the tree to parent elements.
§Example
rsx! {
button {
onclick: move |evt: Event<MouseData>| {
evt.stop_propagation();
}
}
};
pub fn data(&self) -> Rc<T>
pub fn data(&self) -> Rc<T>
Get a reference to the inner data from this event
rsx! {
button {
onclick: move |evt: Event<MouseData>| {
let data = evt.data();
async move {
println!("{:?}", data);
}
}
}
};
pub fn prevent_default(&self)
pub fn prevent_default(&self)
Prevent the default action of the event.
§Example
fn App() -> Element {
rsx! {
a {
// You can prevent the default action of the event with `prevent_default`
onclick: move |event| {
event.prevent_default();
},
href: "https://dioxuslabs.com",
"don't go to the link"
}
}
}
Note: This must be called synchronously when handling the event. Calling it after the event has been handled will have no effect.
This method is not available on the LiveView renderer because LiveView handles all events over a websocket which cannot block.
pub fn default_action_enabled(&self) -> bool
pub fn default_action_enabled(&self) -> bool
Check if the default action of the event is enabled.
Trait Implementations§
Auto Trait Implementations§
impl<T> Freeze for Event<T>where
T: ?Sized,
impl<T> !RefUnwindSafe for Event<T>
impl<T> !Send for Event<T>
impl<T> !Sync for Event<T>
impl<T> Unpin for Event<T>where
T: ?Sized,
impl<T> !UnwindSafe for Event<T>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more