33 lines
593 B
JavaScript
33 lines
593 B
JavaScript
import { json_as_html } from "./core.mjs";
|
|
|
|
|
|
|
|
const demo = [
|
|
"div",
|
|
[
|
|
["id", "wrapper"],
|
|
["class", "demo_div"],
|
|
],
|
|
[
|
|
["h1", [], "header :)"],
|
|
["p", [], "paragraph! meow"],
|
|
["p", [], "another paragraph!! this is so cool"],
|
|
state => ["button", [
|
|
["onclick", _ => {
|
|
state.set("clicked", true);
|
|
render();
|
|
}]
|
|
], "it can even do buttons!"],
|
|
state => ["p", [], state.get("clicked") ? "clicked" : "not clicked"],
|
|
],
|
|
];
|
|
|
|
const state = new Map();
|
|
|
|
function render () {
|
|
document.body.innerHTML = "";
|
|
document.body.appendChild(json_as_html(demo, state));
|
|
}
|
|
|
|
render();
|