pub trait SideEffect<Attr: EffectAttribute<Handler = Self>, Effect, Node> {
    // Required method
    fn effect(&self, node: &Node, attr: Attr, effect: Effect);
}
Expand description

Trait for defining side effects.

The SideEffect trait allows defining asynchronous side effects that are executed as futures. Implementations of this trait should represent tasks that need to be performed concurrently with the rendering process, such as making HTTP requests, updating global state, or scheduling timers.

When used in conjunction with the Dom, side effects can be attached to specific DOM nodes and executed during the rendering process, ensuring proper handling of asynchronous operations within the frontend application.

Required Methods§

source

fn effect(&self, node: &Node, attr: Attr, effect: Effect)

Implementors§

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, &str, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, &String, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, bool, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, i8, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, i32, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, i64, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, i128, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, u8, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, u16, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, u32, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, u64, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, u128, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, usize, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode> SideEffect<DefaultAttrStr, String, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode, A: Display + 'static + Clone + PartialEq> SideEffect<DefaultAttrStr, Mutable<A>, Node> for DefaultAttributeEffect

source§

impl<Node: GenericNode, F: FnMut(&mut <S as Signal>::Item) -> A + 'static, S: Signal + 'static, A: Display + 'static + Clone + PartialEq> SideEffect<DefaultAttrStr, DedupeMap<S, F>, Node> for DefaultAttributeEffect
where <S as Signal>::Item: PartialEq,

source§

impl<Node: GenericNode, F: FnMut(<S as Signal>::Item) -> A + 'static, S: Signal + 'static, A: Display + 'static + Clone + PartialEq> SideEffect<DefaultAttrStr, Map<S, F>, Node> for DefaultAttributeEffect
where <S as Signal>::Item: PartialEq,

source§

impl<Node: GenericNode, S: Signal<Item = A> + 'static, A: Display + 'static + Clone + PartialEq> SideEffect<DefaultAttrStr, DedupeCloned<S>, Node> for DefaultAttributeEffect
where <S as Signal>::Item: PartialEq,

source§

impl<Node: GenericNode, S: Signal<Item = A> + 'static, A: Display + 'static + Copy + PartialEq> SideEffect<DefaultAttrStr, Dedupe<S>, Node> for DefaultAttributeEffect
where <S as Signal>::Item: PartialEq,