6 个版本
0.3.1 | 2021年12月2日 |
---|---|
0.3.0 | 2021年11月14日 |
0.2.2 | 2020年12月10日 |
0.2.1 | 2020年11月8日 |
0.1.0 | 2020年8月9日 |
#26 in #app
24KB
448 行
mogwai-html-macro
提供过程宏 builder!
和 view!
,允许使用 RSX 声明 mogwai 视图。
示例 - 这个 RSX
view!(
<footer class="info">
<p>"Double click to edit a todo"</p>
<p>
"Written by "
<a href="https://github.com/schell">"Schell Scivally"</a>
</p>
<p>
"Part of "
<a href="http://todomvc.com">"TodoMVC"</a>
</p>
</footer>
).run()
大致会生成以下 Rust 代码
(mogwai::gizmo::dom::View::element("footer") as View<web_sys::HtmlElement>)
.attribute("class", "info")
.with(
(mogwai::gizmo::dom::View::element("p") as View<web_sys::HtmlElement>)
.with("Double click to edit a todo"),
)
.with(
(mogwai::gizmo::dom::View::element("p") as View<web_sys::HtmlElement>)
.with("Written by ")
.with(
(mogwai::gizmo::dom::View::element("a")
as View<web_sys::HtmlElement>)
.attribute("href", "https://github.com/schell")
.with("Schell Scivally"),
),
)
.with(
(mogwai::gizmo::dom::View::element("p") as View<web_sys::HtmlElement>)
.with("Part of ")
.with(
(mogwai::gizmo::dom::View::element("a")
as View<web_sys::HtmlElement>)
.attribute("href", "http://todomvc.com")
.with("TodoMVC"),
),
)
.run()
依赖项
~1.5MB
~36K SLoC