vertigo 0.11.4

Reactive Real-DOM library with SSR for Rust
Documentation
use crate::{computed::DropResource, driver_module::event_emitter::EventEmitter};

#[derive(Clone)]
pub struct Hooks {
    callback_after_transaction: EventEmitter<()>,
}

impl Hooks {
    pub fn new() -> Hooks {
        Hooks {
            callback_after_transaction: EventEmitter::default(),
        }
    }

    #[must_use]
    pub(crate) fn on_after_transaction(&self, callback: impl Fn() + 'static) -> DropResource {
        self.callback_after_transaction.add(move |_| {
            callback();
        })
    }

    pub fn fire_end(&self) {
        self.callback_after_transaction.trigger(&());
    }
}