picodom
by nju33
HTML
<script src="https://unpkg.com/picodom"></script>
Babel + JSX
/** @jsx h */
const {h, patch} = picodom;
let element = null;
let oldNode = null;
function render(newNode) {
element = patch(
document.body,
element,
oldNode,
newNode
);
oldNode = newNode;
}
function view(state) {
return (
<div>
<h1>{state}</h1>
<input
oninput={e => render(view(e.target.value))}
value={state}
type="text"
/>
</div>
)
}
render(view("Hello Picodom!"))