JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://cdn.jsdelivr.net/gh/vanjs-org/van/public/van-1.1.0.nomodule.min.js"></script>
CSS
input {
display: block;
}
TypeScript
const VanTodoList = () => {
const items = van.state<Record<number, State<string>>>({});
let count = 0;
return van.tags.div(
van.tags.button(
{
onclick: () => {
items.val = { ...items.oldVal, [count++]: van.state("") };
},
},
"add item"
),
() => {
return van.tags.div(
Object.entries(items.val).flatMap(([key, value]) => {
return van.tags.input({
defaultValue: value,
oninput: (e) => value.val = e.target.value,
});
})
);
}
);
};
van.add(document.body, VanTodoList())