js

Macro js 

Source
macro_rules! js {
    ( #$ident:ident.$expr:expr ) => { ... };
    ( $expr:expr ) => { ... };
}
Expand description

Macro that allows to evaluate pseudo-JavaScript expressions.

Example 1:

use vertigo::js;

let referrer = js!{ document.referrer };

Example 2:

let max_y = js!{ window.scrollMaxY };
js! { window.scrollTo(0, max_y) };

Can be used with DomElementRef:

use vertigo::{js, dom_element};

let node = dom_element! { <input /> };
let node_ref = node.get_ref();
js! { #node_ref.focus() };

Passing an object as an argument is a little more complicated, but possible:

js! {
    window.scrollTo(
        vec![
            ("top", 100000.into()),
            ("behavior", "smooth".into()),
        ]
    )
};