#html #proc-macro #react #jsx #html-macro #web-framework #无框架

yo-html

类似React或Yew的JSX宏,但无需框架或特型。

1个不稳定版本

0.1.0 2024年3月13日

#2137Web编程

MIT/Apache

28KB
423

yo-html

类似React或Yew的JSX宏,但无需框架或特型。

let name = "Tippsie";
let class = "class";
let onclick = todo!();
let dynamic_attribute = "style";
html! {
    <>      // Support fragments
        <div class="important">{"Hello "}<strong>{name}</strong></div>
        <ul class=["list", "of", class]>
            <li><button {onclick}>{"Click here"}</button></li>
            <li {dynamic_attribute}="color:red"></li>
            <li>("%x", 42)</li>     // Shorthand for: format_args!("%x", 42)
        </ul>
    </>
}

examples目录中提供了一个Web框架的示例,但您需要自己创建一个,以便此宏可用。


lib.rs:

类似React或Yew的JSX宏,但无需框架或特型。

let name = "Tippsie";
let class = "class";
let onclick = todo!();
let dynamic_attribute = "style";
html! {
    <>      // Support fragments
        <div class="important">{"Hello "}<strong>{name}</strong></div>
        <ul class=["list", "of", class]>
            <li><button {onclick}>{"Click here"}</button></li>
            <li {dynamic_attribute}="color:red"></li>
            <li>("%x", 42)</li>     // Shorthand for: format_args!("%x", 42)
        </ul>
    </>
}

examples目录中提供了一个Web框架的示例,但您需要自己创建一个,以便此宏可用。

依赖项

~310–770KB
~18K SLoC